صفحه 2 از 13 اولاول 123412 ... آخرآخر
نمایش نتایج 41 تا 80 از 534

نام تاپیک: 1001 نکته در سی شارپ

Hybrid View

پست قبلی پست قبلی   پست بعدی پست بعدی
  1. #1

    قفل کردن کامپیوتر از طریق کدنویسی

    [DllImport("user32.dll")]
    public static extern void LockWorkStation()

    // Lock workstation
    LockWorkStation();

  2. #2
    کاربر دائمی آواتار jeson_park
    تاریخ عضویت
    دی 1387
    محل زندگی
    گچساران
    سن
    34
    پست
    595

    لیست برنامه ها نصب شده

    با سلام
    این هم از اولین نکته من
    امیدوارم که تکراری نباشه

    لیست برنامه ها نصب شده در مسیر زیر درون رجیستری قرار میگیره:
    HKEY_LOCAL_MACHINE\Software\Microsoft\Windows\Curr entVersion\Uninstall

    خب حالا برای بدست آوردنشون:

    private void GetInstalledPrograms()
    {
    RegistryKey localmachine = Registry.LocalMachine;
    RegistryKey uninstall = localmachine.OpenSubKey(@"Software\Microsoft\Windo ws\CurrentVersion\Uninstall");
    foreach (string key in uninstall.GetSubKeyNames())
    {
    RegistryKey activeKey = uninstall.OpenSubKey(key);
    string displayName = (string)activeKey.GetValue("DisplayName");
    if (!String.IsNullOrEmpty(displayName))
    listBox1.Items.Add(displayName);
    }
    }

    موفق باشین
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 27 خرداد 1394 در 02:43 صبح

  3. #3

    شفاف کردن پشت زمینه ی کنترلها

    ایجاد شفافیت کامل پشت زمینه ی یک کنترل :
    control.BackColor = Color.Transparent;
    تعیین میزان شفافیت یک کنترل:
    control.BackColor = Color.FromArgb(trancparency, control.BackColor);
    در کد بالا مقدار trancparency از 0 (برای کاملا شفاف) تا 255 (کاملا کدر) قابل تغییر است.

    مثال : یک Label با شفافیت 50%
    label1.BackColor = Color.FromArgb(127, label1.BackColor);

  4. #4

    Shutdown، Restart و Logoff کردن یک کامپیوتر بوسیله کد

    [DllImport("user32.dll")]
    public static extern int ExitWindowsEx(int uFlags, int dwReason);

    // Log Off
    ExitWindowsEx(0, 0);

    // Reboot
    ExitWindowsEx(2, 0);

    // Shutdown
    ExitWindowsEx(1, 0);

    // Force LogOff
    ExitWindowsEx(4, 0);

    و یا:
    // Log Off
    System.Diagnostics.Process.Start("ShutDown", "/l");

    // Reboot
    System.Diagnostics.Process.Start("ShutDown", "/r");

    // Shutdown
    System.Diagnostics.Process.Start("ShutDown", "/s");

  5. #5

    بستن یک پروسه در حال اجرا

    مثال : بستن notepad
    using System.Diagnostics;

    foreach (Process p in Process.GetProcesses())
    {
    if (p.ProcessName.ToLower() == "notepad")
    p.Kill();
    }
    و یا :
    System.Diagnostics.Process.Start("TaskKill", "/f /im Notepad.exe /t");

  6. #6

    Ping کردن یک کامپیوتر تحت شبکه

    using System.Net.NetworkInformation;
    private void button2_Click(object sender, EventArgs e)
    {
    string remoteMachineNameOrIP = "127.0.0.1";
    int timeOut = 5;
    Ping ping = new Ping();
    // Pinging remote maching
    PingReply reply = ping.Send(remoteMachineNameOrIP, timeOut);
    // Displaying the result
    StringBuilder sb = new StringBuilder();
    sb.Append("Address:" + reply.Address.ToString());
    sb.Append("\nStatus:" + reply.Status.ToString());
    sb.Append("\nRoundtripTime:" + reply.RoundtripTime.ToString());
    MessageBox.Show(sb.ToString(), "Ping Result: " + remoteMachineNameOrIP);
    }
    منبع : http://www.dotnetspider.com/code/C-245-Ping-remote-computer-network.aspx

  7. #7

    بدست آوردن مسیر دایرکتوری جاری برنامه

    MessageBox.Show(AppDomain.CurrentDomain.BaseDirect  ory);
    یا :
    MessageBox.Show(System.IO.Directory.GetCurrentDire  ctory());
    یا :
    MessageBox.Show(Application.StartupPath);
    یا:
    MessageBox.Show(System.IO.Path.GetDirectoryName(Ap  plication.ExecutablePath));

  8. #8

    برگرداندن تعدادی مشخص و اتفاقی از رکوردها بوسیله کوئری

    مثال : برگرداندن 10 رکورد تصادفی از جدول myTable
    SELECT TOP 10 id,title
    FROM myTable
    ORDER BY NEWID()

  9. #9

    پاک کردن خاصیت Text گروهی از کنترلهای مشخص

    کاربرد : زمانی که نمیتوان از یک الگوریتم بازگشتی استفاده کرد؛ برای مثال کنترلها در Container های متفاوتی هستند و تنها تعداد خاصی از آنها باید Clear شوند.
    public void ClearControls(params Control[] ctls)
    {
    foreach (Control ct in ctls)
    ct.Text = "";
    }

    private void button1_Click(object sender, EventArgs e)
    {
    ClearControls(textBox1, textBox2, comboBox1);
    }

  10. #10

    عوض کردن نشانگر ماوس (cursor) روی یک کنترل

    استفاده از کرسرهای پیشفرض محیط :
    button1.Cursor = Cursors.Hand;

    لود کردن یک کرسر سفارشی از فایل :
    button1.Cursor = new Cursor(@"C:\WINDOWS\Cursors\hibeam.cur");

  11. #11

    پاک کردن خاصیت Text کنترلهای موجود در یک Container بصورت بازگشتی

    public void ClearControls(Control _parent)
    {
    if (!_parent.HasChildren)
    _parent.Text = "";
    foreach (Control ct in _parent.Controls)
    ClearControls(ct);
    }

    private void button1_Click(object sender, EventArgs e)
    {
    ClearControls(this);
    }

  12. #12

    بدست آوردن آخرین Identity اضافه شده به جدول

    INSERT INTO Sales.Customer ([TerritoryID],[CustomerType]) VALUES (8,'S')
    GO
    SELECT SCOPE_IDENTITY()

  13. #13
    کاربر دائمی آواتار Masoud_TB
    تاریخ عضویت
    آذر 1386
    محل زندگی
    Tehran
    پست
    165

    ایجاد کردن یک Property

    برای اینکه خیلی سریع یک Property ایجاد کنی کافیه که کلمه prop رو تایپ کنین و دوباره Tab بزنین. بعد نوع داده ای , نام متغییر private و در نهایت نام Propety مورد نظرتون. با تایپ کردن 5 کلمه Property تون آمادست.
    عکس های ضمیمه عکس های ضمیمه

  14. #14
    کاربر دائمی آواتار Masoud_TB
    تاریخ عضویت
    آذر 1386
    محل زندگی
    Tehran
    پست
    165

    using کردن یک namespace

    وقتی نام کلاسی رو می نویسین و می دونین که باید ازش using کنین کافیه که بعد تایپ کردن اسمش Alt + Shift + F10 و بعد Enter رو بزنین خودش براتون using رو اضافه می کنه!

  15. #15
    کاربر دائمی آواتار Masoud_TB
    تاریخ عضویت
    آذر 1386
    محل زندگی
    Tehran
    پست
    165

    ساختن یک Connection با استفاده از ConnectionString موجود در فایل Configuration

    برای خواندن ConnectionString ی که در فایل app.config قرار داده شده کافیه و ایجاد یک SqlConnection کافیه کد زیر را تایپ کنین:


    SqlConnection cnn = new SqlConnection(ConfigurationManager.ConnectionStrin gs["myConnection"].ConnectionString);

  16. #16

    نقل قول: ساختن یک Connection با استفاده از ConnectionString موجود در فایل Configuration

    نقل قول نوشته شده توسط Masoud_TB مشاهده تاپیک
    برای خواندن ConnectionString ی که در فایل app.config قرار داده شده کافیه و ایجاد یک SqlConnection کافیه کد زیر را تایپ کنین:


    SqlConnection cnn = new SqlConnection(ConfigurationManager.ConnectionStrin gs["myConnection"].ConnectionString);

    با سلام
    لطفا اگه میشه این کد را با vb.net بنویسید خیلی احتیاج دارم
    ممنون میشم سریع پاسخ دهید

  17. #17
    کاربر دائمی آواتار Masoud_TB
    تاریخ عضویت
    آذر 1386
    محل زندگی
    Tehran
    پست
    165

    Encrypt کردن ConnectionString ها موجود در فایل app.Config

    برای Encrypt کردن قسمت ConnectionStrings فایل web.config یا app.Config از کد زیر استفاده می کنیم:

    App.Config

    Configuration config = ConfigurationManager.OpenExeConfiguration(Configur ationUserLevel.None);
    config.ConnectionStrings.SectionInformation.ForceS ave = true;
    config.ConnectionStrings.SectionInformation.Protec tSection("RsaProtectedConfigurationProvider");
    config.Save();


    Web.Config

    Configuration config = WebConfigurationManager.OpenWebConfiguration("myWe bSite");
    config.ConnectionStrings.SectionInformation.ForceS ave = true;
    config.ConnectionStrings.SectionInformation.Protec tSection("RsaProtectedConfigurationProvider");
    config.Save();

  18. #18
    کاربر دائمی آواتار Masoud_TB
    تاریخ عضویت
    آذر 1386
    محل زندگی
    Tehran
    پست
    165

    Decrypt کردن ConnectionString ها موجود در فایل app.Config

    برای Decrypt کردن محتویات ConnectionString داخل فایل های Config از کد های زیر استفاده می کنیم:

    برای App.Config

    Configuration config = ConfigurationManager.OpenExeConfiguration(Configur ationUserLevel.None);
    config.ConnectionStrings.SectionInformation.ForceS ave = true;
    config.ConnectionStrings.SectionInformation.Unprot ectSection();
    config.Save();
    برای Web.Config

    Configuration config = WebConfigurationManager.OpenWebConfiguration("myWe bSite");
    config.ConnectionStrings.SectionInformation.ForceS ave = true;
    config.ConnectionStrings.SectionInformation.Unprot ectSection();
    config.Save();

  19. #19

    Lightbulb معرفی چند snippet متداول جهت سرعت بخشیدن به کدنویسی

    آشنایی با Snippet ها باعث سرعت شما در محیط کدنویسی میشود. برای استفاده کافیست بلافاصله بعد از نوشتن آنها (و بدون ایجاد فاصله) دوبار دکمه Tab را فشار دهید. (توضیحات بیشتر)
    در ادامه با چند اسنیپت متداول آشنا خواهید شد :

    ایجاد یک ناحیه :‌
    #region
    ایجاد MessageBox :
    mbox
    ایجاد Constructor برای کلاس :
    ctor
    ایجاد متود Main :
    svm
    برای ایجاد کلاسها، ایندکسر، استراکچر، ...
    class, enum, struct, indexer
    برای ایجاد انواع حلقه ها :
    for
    forr
    foreach
    while
    do
    ایجاد پراپرتی :
    prop
    propg
    دستورات شرطی :
    if
    else
    switch
    و ...

    روش دیگر افزودن :‌ روی یک قسمت خالی در محیط کدنویسی Right Click و سپس گزینه Insert Snippet رو انتخاب نمایید.
    چنانچه کدی (مثلا 10 خط) نوشتید که میخواهید درون یک بلاک (حلقه، شرط و ...) قرار بگیره تمامی خطوط آن را Select و پس از Right Click گزینه Surround with رو انتخاب نمایید.

    در لینک زیر نیز ضمن آشنایی با سایر موارد میتوانید snippet های مفید دیگری را نیز دانلود و به IDE خود بیفزایید.
    لیست کامل سایر snippetها : http://msdn2.microsoft.com/en-us/vs2005/aa718338.aspx

  20. #20

    ایجاد فرمهایی با اشکال غیرمستطیلی

    ایجاد یک فرم دایره ای شکل :
    private void Form1_Load(object sender, EventArgs e)
    {
    this.Height = 350;
    this.Width = 350;
    //Creating circle path
    System.Drawing.Drawing2D.GraphicsPath path = new System.Drawing.Drawing2D.GraphicsPath();
    path.AddEllipse(0, 0, 300, 300);
    //Creating the region from the circle path
    this.Region = new Region(path);
    this.Show();
    }
    منبع : http://www.dotnetspider.com/code/C-144-Create-Circle-shaped-Form-using-Regions.aspx

  21. #21

    Cool قطع کردن اتصال اینترنت دایل آپ از طریق دستورات خط فرمان

    System.Diagnostics.Process.Start("rasdial", "/disconnect"); 

  22. #22

    تغییر زبان پیشفرض ویندوز بصورت داینامیک در برنامه

    public struct LanguageHelper
    {
    public static void SetLanguage2English()
    {
    InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(new CultureInfo("en-US"));
    }

    public static void SetLanguage2Farsi()
    {
    InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(new CultureInfo("fa-IR"));
    }
    }

  23. #23

    ایجاد طیف رنگ (Gradient) بعنوان پشت زمینه ی کنترلها

    using System.Drawing.Drawing2D;
    using System.Drawing;

    public void PaintGradient(Control _control, LinearGradientMode _direction, Color _gradientColorStart, Color _gradientColorEnd)
    {
    LinearGradientBrush gradBrush;
    gradBrush = new LinearGradientBrush(new Rectangle(0, 0, _control.Width, _control.Height), _gradientColorStart, _gradientColorEnd, _direction);
    Bitmap bmp = new Bitmap(_control.Width, _control.Height);
    Graphics g = Graphics.FromImage(bmp);
    g.FillRectangle(gradBrush, new Rectangle(0, 0, _control.Width, _control.Height));
    _control.BackgroundImage = bmp;
    _control.BackgroundImageLayout = ImageLayout.Stretch;
    }
    حال این متود رو در رخداد Paint کنترلهای دلخواه (فرم، دکمه، پنل ...) بنویسید :
    private void Form1_Paint(object sender, PaintEventArgs e)
    {
    PaintGradient(this, LinearGradientMode.Vertical, Color.RoyalBlue, Color.DarkBlue);
    }
    خصوصا ظاهر بهتر و مناسبتری برای دکمه های شما ایجاد میکند.

  24. #24

    Exclamation چگونه از یک فرم تنها یک عدد بتواند باز شود ؟ (توسط Generic Singleton)

    با استفاده از پیاده سازی ژنریک الگوی سینگلتون :

    public class SingletonProvider<T> where T : new()
    {
    SingletonProvider() { }

    public static T Instance
    {
    get
    {
    return SingletonCreator.Instance;
    }
    }

    class SingletonCreator
    {
    static SingletonCreator(){}
    private static T instance;
    public static T Instance
    {
    get
    {
    System.Windows.Forms.Form frm = instance as System.Windows.Forms.Form;
    if (instance == null || frm.IsDisposed==true)
    instance = new T();
    return instance;
    }
    }
    }
    }
    و برای استفاده :
    BoatForm boat = SingletonProvider<BoatForm>.Instance;

    آموزش کامل این روش : https://barnamenevis.org/showthread.php?t=90581

  25. #25

    Lightbulb تغییر رنگها و شمای محیط کدنویسی ویژوال استادیو

    گاهی بد نیست برای تنوع هم که شده ظاهر محیط کدنویسی رو از حالت یکنواخت و سفید همیشگی تغییر بدیم.
    اینکار رو میتونید خودتون بسادگی انجام بدید و راحتتر از اون اینکه فایل تنظیمات رو از سایر سایتها (مانند سایت زیر ) دانلود و استفاده کنید:‌
    http://idehotornot.ning.com
    پس از دانلود فایل مورد نظر، جهت اعمال تغییرات در ویژوال استادیو مراحل زیر رو طی کنید :
    Tools(menu)->Import and Export settings->Import...
    عکس های ضمیمه عکس های ضمیمه

  26. #26

    بدست آوردن مسیر فولدرهای ویژه

    برای مثال :
    string path = Environment.GetFolderPath(Environment.SpecialFolde  r.ProgramFiles);
    سایر مسیرها قابل دستیابی با این روش :
    Desktop, MyDocuments, System, ...
    بنقل از : https://barnamenevis.org/showpost.php?p=468371&postcount=3

  27. #27

    جابجا کردن فرم با کلیک بر روی هر قسمت از آن - با استفاده از توابع API

    using System.Runtime.InteropServices;

    [DllImport("user32.dll")]
    static extern int ReleaseCapture();
    [DllImport("user32.dll", EntryPoint = "SendMessageA")]
    static extern int SendMessage(int hwnd, int wMsg, int wParam, object lParam);
    private const int WM_NCLBUTTONDOWN = 161;

    private void Form1_MouseDown(object sender, MouseEventArgs e)
    {
    ReleaseCapture();
    SendMessage(this.Handle.ToInt32(), WM_NCLBUTTONDOWN, 2, 0);
    }

  28. #28

    به دست آوردن نام یک Enum از عدد متناظر آن


    public enum Days { Sat = 1, Sun, Mon, Tue, Wed, Thu, Fri };
    string s= Enum.GetName(typeof(Days),4);
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 12:52 عصر

  29. #29

    پر کردن یک listbox از رنگهای سیستمی

    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }
    private void Form1_Load(object sender, EventArgs e)
    {
    string[] colorNames;
    colorNames = System.Enum.GetNames(typeof(KnownColor));
    listBox1.Items.AddRange(colorNames);
    }

    private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
    {
    KnownColor selectedColor;
    selectedColor = (KnownColor)System.Enum.Parse(typeof(KnownColor), listBox1.Text);
    this.BackColor = System.Drawing.Color.FromKnownColor(selectedColor) ;
    }
    }

    منبع:pro.net2.0 windows forms and custom controls Apress
    آخرین ویرایش به وسیله az_farzaneh : دوشنبه 26 فروردین 1387 در 11:41 صبح

  30. #30

    تولید N عدد تصادفی بدون تکرار - با استفاده از HashSet


    public static int[] RandomNumbers(int n,int min,int max)
    {
    Random rnum = new Random();
    HashSet<int> hset = new HashSet<int>();
    while (hset.Count < n)
    hset.Add(rnum.Next(min,max));
    int[] OutPut = hset.ToArray();
    return OutPut;
    }
    آخرین ویرایش به وسیله Mahmoud.Afrad : یک شنبه 20 خرداد 1397 در 09:03 صبح

  31. #31

    نقل قول: جابجا کردن فرم با کلیک بر روی هر قسمت از آن - با استفاده از توابع API

    با سلام کسی dll های نرم افزار حضور و غیاب رو داره یا میتونه راهنمایی کنه از کجا میتونم تهیه کنم

  32. #32

    Cool یافتن شماره سریال و مدل تمامی هارددیسکهای موجود در یک سیستم

    ابتدا System.Management رو به References پروژه بیفزایید و سپس :
    using System.Management;

    private void GetHDDSerialNumber()
    {
    ManagementObjectSearcher searcher;
    string query1 = "SELECT * FROM Win32_DiskDrive";
    string query2 = "SELECT * FROM Win32_PhysicalMedia";

    searcher = new ManagementObjectSearcher(query1);
    foreach (ManagementObject wmi_HD in searcher.Get())
    if (wmi_HD["Model"] != null)
    MessageBox.Show(wmi_HD["Model"].ToString());

    searcher = new ManagementObjectSearcher(query2);
    foreach (ManagementObject wmi_HD in searcher.Get())
    if (wmi_HD["SerialNumber"] != null)
    MessageBox.Show(wmi_HD["SerialNumber"].ToString());
    }

  33. #33

    تبدیل مقدار یک عبارت رشته ای به یک عدد صحیح

    int n = Convert.ToInt32(textBox1.Text);
    یا :
    int n = Int32.Parse(textBox1.Text);
    و چنانچه امکان خطا باشد که تقریبا همیشه هست :
    int n;
    Int32.TryParse(textBox1.Text, out n);
    در این حالت خروجی به n تخصیص داده میشود و چنانچه مشکلی رخ دهد n برابر صفر میشود.

  34. #34

    اجرا کردن یک فایل اجرایی با کدنویسی

    System.Diagnostics.Process.Start("mspaint.exe");

    چنانچه فایل اجرایی نیاز به آرگومان خط فرمان داشته باشد :
    System.Diagnostics.Process.Start("mspaint.exe", "c:\\Test.bmp");

    مثال بالا تصویر Test را در msPaint باز میکند.

  35. #35

    Lightbulb ایجاد متن و رشته های چند سطری

    string myString1 = "This is the first line of my string.\n" +
    "This is the second line of my string.\n" +
    "This is the third line of the string.\n";
    یا :
    string myString2 = @"This is the first line of my string.
    This is the second line of my string.
    This is the third line of the string.";

  36. #36

    Lightbulb روشهای Initialize کردن انواع آرایه ها

    // Single-dimensional array (numbers).
    int[] n1 = new int[4] {2, 4, 6, 8};
    int[] n2 = new int[] {2, 4, 6, 8};
    int[] n3 = {2, 4, 6, 8};
    // Single-dimensional array (strings).
    string[] s1 = new string[3] {"John", "Paul", "Mary"};
    string[] s2 = new string[] {"John", "Paul", "Mary"};
    string[] s3 = {"John", "Paul", "Mary"};
    // Multidimensional array.
    int[,] n4 = new int[3, 2] { {1, 2}, {3, 4}, {5, 6} };
    int[,] n5 = new int[,] { {1, 2}, {3, 4}, {5, 6} };
    int[,] n6 = { {1, 2}, {3, 4}, {5, 6} };
    // Jagged array.
    int[][] n7 = new int[2][] { new int[] {2,4,6}, new int[] {1,3,5,7,9} };
    int[][] n8 = new int[][] { new int[] {2,4,6}, new int[] {1,3,5,7,9} };
    int[][] n9 = { new int[] {2,4,6}, new int[] {1,3,5,7,9} };

  37. #37

    ایجاد تصاویر Bitmap در زمان اجرا

    private Image CreateBitmap()
    {
    System.Drawing.Bitmap flag = new System.Drawing.Bitmap(10, 10);
    for (int x = 0; x < flag.Height; ++x)
    for (int y = 0; y < flag.Width; ++y)
    flag.SetPixel(x, y, Color.White);
    for (int x = 0; x < flag.Height; ++x)
    flag.SetPixel(x, x, Color.Red);
    return flag;
    }

    private void Form1_Load(object sender, EventArgs e)
    {
    pictureBox1.Image = CreateBitmap();
    }

    منبع : http://msdn2.microsoft.com/en-us/library/aa287582(VS.71).aspx

  38. #38

    افزودن کنترل در زمان اجرا

    مثال: یک تکست باکس به فرم اضافه میکند:
    private void button1_Click(object sender, System.EventArgs e) 
    {
    TextBox myText = new TextBox();
    myText.Location = new Point(25,25);
    this.Controls.Add (myText);
    }

  39. #39

    Lightbulb روش نصب MSDE همراه با برنامه

    توصیحات رو سر فرصت اضافه میکنم. فعلا :
    http://www.codeproject.com/KB/databa...Result=success

  40. #40

    یافتن MAC آدرس کارت شبکه

    ابتدا System.Management رو به References پروژه بیفزایید و سپس :
    using System.Management;

    private void GetMACAddress()
    {
    ManagementObjectSearcher searcher;
    string qry = "select * FROM Win32_NetworkAdapter";
    searcher = new ManagementObjectSearcher(qry);
    foreach (ManagementObject wmi_HD in searcher.Get())
    if (wmi_HD["MacAddress"] != null)
    MessageBox.Show(wmi_HD["MacAddress"].ToString());
    }

صفحه 2 از 13 اولاول 123412 ... آخرآخر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •