صفحه 8 از 14 اولاول ... 678910 ... آخرآخر
نمایش نتایج 281 تا 320 از 533

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

  1. #281

    ايجاد رشته اي تصادفي از اعداد با طول مشخص

    Generating Random Number and String

    private string GenerateRandomString(int size)
    {
    Random r = new Random();
    string legalChars = "1234567890";
    StringBuilder sb = new StringBuilder();
    for (int i = 0; i < size; i++)
    sb.Append(legalChars.Substring(r.Next(0, legalChars.Length - 1), 1));
    return sb.ToString();
    }
    مثال زير در هر بار كليك دكمه يك رشته ي تصادفي و 6 رقمي از اعداد را نمايش ميدهد:
    private void button1_Click(object sender, EventArgs e)
    {
    MessageBox.Show(GenerateRandomString(6));
    }
    جهت تغيير دادن حروف رشته، متغير legalChars را تغيير دهيد. مثلا براي تركيب حروف بزرگ با اعداد :
    string legalChars = "1234567890ABCDEFGHIJKLMNOPQRSTUVWXYZ";
    منبع :‌ http://www.c-sharpcorner.com/UploadF...domNumber.aspx

  2. #282

    شبيه سازي عمل كليك ماوس روي يك كنترل با كدنويسي

    simulate mouse click on a control

    private const UInt32 WM_LBUTTONDOWN = 0x201;
    private const UInt32 WM_LBUTTONUP = 0x202;

    [DllImport("user32.dll")]
    private static extern int SendMessage(IntPtr handle,
    UInt32 message,int wParam,int lParam);


    public static void SendClick(Control receiver)
    {
    if (receiver != null)
    {
    SendMessage(receiver.Handle, WM_LBUTTONDOWN, 0, 0);
    SendMessage(receiver.Handle, WM_LBUTTONUP, 0, 0);
    }
    }
    مثال :
    private void button1_Click(object sender, EventArgs e)
    {
    SendClick(button2);
    }

    private void button2_Click(object sender, EventArgs e)
    {
    MessageBox.Show("2");
    }
    منبع : http://www.dotnet247.com/247referenc.../15/78924.aspx

  3. #283
    ذخیره DataGrid در اکسل Excel

    ابتدا در Add Reference و در تب Com گزینه های زیر را add کنید
    1- Microsoft Excel 11 object Lib
    Microsoft Office 11 object lib 2-

    Excel.ApplicationClass excel = new ApplicationClass();
    excel.Application.Workbooks.Add(true);
    int ColumnIndex = 0;
    foreach (DataGridViewColumn col in dgv.Columns)
    {
    ColumnIndex++;
    excel.Cells[1, ColumnIndex] = col.HeaderText;

    }
    int rowIndex = 0;
    string val;

    pb.Maximum = dgv.Rows.Count;
    foreach (DataGridViewRow row in dgv.Rows)
    {
    rowIndex++;
    ColumnIndex = 0;
    foreach (DataGridViewColumn col in dgv.Columns)
    {
    ColumnIndex++;
    if (row.Cells[ColumnIndex - 1].Value == null)
    val = "";
    else
    val = row.Cells[ColumnIndex - 1].Value.ToString();
    excel.Cells[rowIndex + 1, ColumnIndex] = val;

    }
    }
    excel.Visible = true;

  4. #284

    از بین بردن کاراکتر های غیر مجاز در رشته های عددی

    توسط متد زیر می تواند رشته عددی خالص را از هر رشته ای که حاوی کاراکتر های غیر عددی است به دست آورد.


    private String TrimToNumber(String text)
    {
    StringBuilder sb = new StringBuilder();
    foreach (char c in text)
    {
    if (char.IsDigit(c))
    sb.Append(c);
    }
    return sb.ToString();
    }




    مثال



    string text = "-0-#$%t123^456j7j8j9j";

    MessageBox.Show(TrimToNumber(text));




    خروجی مثال بالا =0123456789

    پ و :
    البته این برای اون دسته از دوستانی که نمی خوان از TextBox ها سفارشی شده استفاده کنند. و یا متن را از فایل یا جایی دیگه می خونن که ممکنه ناخالصی داشته باشه

    مجموعه آموزشی Asp.Net Core Mvc کاملا به زبان فارسی(21 ماژول و 15 ساعت فیلم آموزشی همراه با سورس کامل تمرینات و پروژه عملی انجام شده در طول آموزشی)
    مشاهده جزئیات در آدرس http://www.mkiani.ir/blog/content/53084


    وب سایت : http://www.mkiani.ir
    پست الکترونیک : mkiani3000@gmail.com

    موفق و پیروز باشید.
    مهدی کیانی


  5. #285
    کاربر دائمی آواتار mohammad272005
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    تهران
    پست
    639

    چند تابع

    يه تابع ساده واسه اينكه ببينيم ورودي int هست يا نه؟

    #region IsInteger

    ///<summary>
    /// Checks whether the give text is integer.
    ///</summary>
    ///<param name="text">The text to be checked.</param>
    ///<returns>true if text is integer</returns>
    public static bool IsInteger(this string text)
    {
    int num;
    return int.TryParse(text, out num);
    }

    #endregion


    يه تابع ساده واسه اينكه ببينيم ورودي int يا كنترلي (مثل enter) هست يا نه؟

    #region IsInetegerOrControl

    ///<summary>
    /// Checks whether the give text is one of integer or control, or not.
    ///</summary>
    /// <param name="text">The text to be checked.</param>
    /// <returns>true if text is integer or control</returns>
    public static bool IsInetegerOrControl(this string text)
    {
    int num;
    if (!int.TryParse(text, out num)) return true;
    foreach (char chr in text)
    {
    if (!char.IsControl(chr))
    return false;
    }
    return true;
    }

    #endregion


    از بين بردن فضاهاي خالي تو يه آرايه

    #region Compact

    ///<summary> ///
    /// Eleminates all null or nullstrings in string array
    ///</summary>
    /// <param name="strings">String array to compact</param>
    /// <returns>Compacted string array</returns>
    public static string[] Compact(params string[] strings)
    {
    return strings.Where(item => string.IsNullOrEmpty(item)).ToArray();
    }

    #endregion


    آيا ورودي unicode هست؟

    #region IsUnicode

    ///<summary> ///
    /// Checks whether the given text is unicode or not.
    /// </summary>
    /// <param name="str">The text to be checked.</param>
    /// <returns>returns true if text is unicode.</returns>
    public static bool IsUnicode(this string str)
    {
    byte[] unicodeBytes = System.Text.Encoding.Unicode.GetBytes(str);
    for (int i = 1; i < unicodeBytes.Length; i += 2) if (unicodeBytes[i] != 0) return true;
    return false;
    }

    #endregion


    تبديل به unicode:

    #region ToUnicode

    ///<summary>
    /// </summary>
    /// <param name="str"></param>
    /// <returns></returns>
    public static string ToUnicode(this string str)
    {
    return Encoding.Unicode.GetString(Encoding.Unicode.GetByt es(str));
    }

    #endregion



    -- لطفا نكات رو بصورت ماژولوار (هر نكته در يك پست) بهمراه عناوين گويا ارسال نماييد. --
    با تشكر
    sinpin
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:02 عصر

  6. #286
    کاربر دائمی آواتار mohammad272005
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    تهران
    پست
    639

    Override كردن توابع از طريق snnipet ها

    بنا به فرمايش يكي از دوستان عزيز:
    براي override كردن يه متد virtual تو محيط VS، كلمه override رو بنويسيد و يه space بزنيد. اگه عضو virtualي وجود داشته باشه interllisence مياردش. حالا فقط كافيه انتخابش كنيد تا اونو براتون override كنه. ميدونيد كه تمام classهايي كه به هر نحوي در #C ايجاد ميشن (چه توسط ما چه توسط NET.) تلويحا از كلاس Object ارث مي برن. و همينطور ميدونيد در كلاس Object متدهاي Equals، GetHashCode، و ToString بصورت virtual تعريف شدن. پس ما هميشه ميتونيم اين متدها رو override كنيم. متد ToString كه ميدوني. 100تا كاربرد داره يكيش مال موقعه‏ايه كه شما داريد مقدار يه متغير رو توي quick watch نگاه مي كنيد. با override كردن ToString توي classهاتون مي تونيد اونچه خودتون دلتون ميخواد رو اونجا ببنيد. متدهاي GetType و Equals رو هم توي يه مثال نه چندان optimize شده نشون مي دم:

    private int _CoreData;

    public override bool Equals(object obj)
    {
    if (obj == null) return false;
    if (obj.GetType() != this.GetType()) return false;
    if ((obj as Program)._CoreData != this._CoreData) return false;
    return true;
    }
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:04 عصر

  7. #287

    writing to event log



    public class Logger
    {
    private EventLog _EventLog;
    public string _Source { get; set; }
    public string _Log { get; set; }

    public Logger(string SourceName)
    {
    _EventLog = new EventLog();
    _Source = SourceName;

    if (!EventLog.SourceExists(_Source))
    {
    EventLog.CreateEventSource(_Source, _Log);
    }
    _EventLog.Source = _Source;
    }

    public void Add(string Message,
    System.Diagnostics.EventLogEntryType eType)
    {
    _EventLog.WriteEntry(Message, eType);
    }

    public void AddError(string Message)
    {
    Add(Message, System.Diagnostics.EventLogEntryType.Error);
    }

    public void AddWarning(string Message)
    { Add(Message, System.Diagnostics.EventLogEntryType.Warning);
    }

    public void AddInformation(string Message)
    {
    Add(Message,
    System.Diagnostics.EventLogEntryType.Information);
    }
    }



    نحوه استفاده:



    Logger Log = new Logger("CSTips");
    Log.AddError("Error message");
    Log.AddInformation("Informational message");
    Log.AddWarning("Warning message");




    منبع

    مجموعه آموزشی Asp.Net Core Mvc کاملا به زبان فارسی(21 ماژول و 15 ساعت فیلم آموزشی همراه با سورس کامل تمرینات و پروژه عملی انجام شده در طول آموزشی)
    مشاهده جزئیات در آدرس http://www.mkiani.ir/blog/content/53084


    وب سایت : http://www.mkiani.ir
    پست الکترونیک : mkiani3000@gmail.com

    موفق و پیروز باشید.
    مهدی کیانی


  8. #288
    کاربر دائمی آواتار سار
    تاریخ عضویت
    اسفند 1382
    محل زندگی
    تورین-ایتالیا
    پست
    1,044

    استفاده از متد Find در Generic List

    با فرض اينكه lstTerm ليستي از كلاس Term است مي خواهيم ترمي را پيدا كنيم كه Id آن برابر با 88-87 باشد.
    lstTerms.Find(delegate(Term t) { return t.Id = "87-88"; });
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:17 عصر

  9. #289

    Concatenating Wave ، اتصال فایلهای Wave

    در یک پروژه که نیاز به اعلام شماره ها بصورت گویا داشتم ، بعد از ظبط صدای اعداد ، برای اینکه فایلها رو پشت سر هم پخش کنم 2 تا مشکل اساسی داشتم.
    1- ایجاد تاخیر در پخش اعداد بعدی (مثلا 120 رو بعد از پخش "یکصد و " یه مکثی ایجاد میشد تا بره سراغ فایل "بیست"
    2-تشخیص اینکه کی یکصدو تمام میشه تا بیست صدا زده بشه سخت بود.

    خلاصه به این نتیحه رسیدم که فایلهای Wave رو بهم بچشبونم و بصورت یک فایل Temp در بیارم و پخش کنم.
    کلاس زیر رو پیدا کردم که خیلی عالیه و راحته. برای شروع 2 فایل رو بهم میچسبونه که به سادگی قابل افزایش به n فایل هست.
    فایل های ضمیمه فایل های ضمیمه

  10. #290

    گرفتن کد اسکی و یونیکد کاراکتر ها

    تبدیل به یونیکد

    String ucode = String.Format("{0:x4}", (int)('a'));
    // ucode = 0061


    تبدیل به اسکی

    String acode = (((int)('a')).ToString());
    //acode=97
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:18 عصر

    مجموعه آموزشی Asp.Net Core Mvc کاملا به زبان فارسی(21 ماژول و 15 ساعت فیلم آموزشی همراه با سورس کامل تمرینات و پروژه عملی انجام شده در طول آموزشی)
    مشاهده جزئیات در آدرس http://www.mkiani.ir/blog/content/53084


    وب سایت : http://www.mkiani.ir
    پست الکترونیک : mkiani3000@gmail.com

    موفق و پیروز باشید.
    مهدی کیانی


  11. #291

    فرستادن پارامتر به برنامه email ویندوز

    توسط متد زیر می توانید مستقیما برنامه outlook ویندوز را باز کرده و مکان های مناسب ان را مقدار دهی کنید



    private static void SendMail(String mailto,String cc,String subject,String body)
    {

    String command = String.Format("mailto:{0}?cc={1}&subject={2}&body= {3}", mailto, cc, subject, body);
    System.Diagnostics.Process.Start(command);
    }



    یک مثال



    private void button1_Click(object sender, EventArgs e)
    {
    SendMail("rkiani88@yahoo.com","rkiani88@hotmail.co m",
    "this a sample subject for sample mail",
    "Hi All, this is a sample code for sending parameters to outlook exprees");
    }



    نتیجه اجرا



    نکته:
    bcc را نیز می توانید خودتان به متد فوق اضافه کنید
    موفق باشید

    مجموعه آموزشی Asp.Net Core Mvc کاملا به زبان فارسی(21 ماژول و 15 ساعت فیلم آموزشی همراه با سورس کامل تمرینات و پروژه عملی انجام شده در طول آموزشی)
    مشاهده جزئیات در آدرس http://www.mkiani.ir/blog/content/53084


    وب سایت : http://www.mkiani.ir
    پست الکترونیک : mkiani3000@gmail.com

    موفق و پیروز باشید.
    مهدی کیانی


  12. #292
    VIP آواتار Sajjad.Aghapour
    تاریخ عضویت
    مهر 1386
    محل زندگی
    اهل کاشانم .. روزگارم بد نیست
    پست
    1,265

    پخش فایل صوتی موجود در Resource

    برای دسترسی به فایلهای صوتی داخل Resource و پخش کردن اونها نمیشه مانند دسترسی به bitmap ها یا .... عمل کرد.برای این کار میشه طبق مثال زیر عمل کرد.....
    این مثال واسه وقتیه که یک فایل wav در resource وجود داشته باشه.برای فایل های بیشتر میشه از ArrayList استفاده کرد....
    اضافه کردن namespace ها:


    using System.Reflection;
    using System.IO;
    using System.Media;
    using System.Runtime.InteropServices;



    اضافه کردن dll مربوط به Windows Media Player :


    [DllImport("Winmm.dll")]
    private static extern bool PlaySound(byte[] data, IntPtr hMod, UInt32 dwFlags);
    private const UInt32 SND_ASYNC = 1;
    private const UInt32 SND_MEMORY = 4;



    کدهای مربوطه:

    private Assembly a = Assembly.GetExecutingAssembly();
    private string _sound = string.Empty;
    private Stream stream;
    private Int32 length;
    private byte[] _data;

    foreach (string resourceName in a.GetManifestResourceNames())
    if (Path.GetExtension(resourceName).ToLower() == ".wav")
    _sound = resourceName;
    stream = a.GetManifestResourceStream(_sound);
    length = (Int32)stream.Length;
    _data = newbyte[length];
    stream.Read(_data, 0, length);
    PlaySound(_data, IntPtr.Zero, SND_ASYNC | SND_MEMORY);
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:19 عصر
    Close your eyes, take a deep breath, click your heels three times, and say, "There's no better thing than Inversion of Control and Dependency Injection, generic specialization, the decorator pattern, chains of responsibilities, and extensible software."

  13. #293
    کاربر دائمی آواتار combo_ci
    تاریخ عضویت
    تیر 1384
    محل زندگی
    مشهد
    پست
    459

    تبديل اندازه colomn هاي يك سطر datagridview به حداكثر تعداد كاراكتر در همون ستون

    private void CalculateWideOfColomn(Graphics g)
    {
    SizeF tmpSize = new SizeF();
    for (int i = 0; i <= dataGridView1.Columns.Count - 1; i++)
    {
    Font tmpFont = dataGridView1.DefaultCellStyle.Font;
    tmpSize = g.MeasureString(dataGridView1.Columns[i].HeaderText, tmpFont);
    float tmpWidth = tmpSize.Width;
    float RowHeaderHeight = tmpSize.Height;
    for (int j = 0; j <= dataGridView1.Rows.Count - 1; j++)
    {
    tmpSize = g.MeasureString("HELLO", tmpFont);
    tmpSize = g.MeasureString(dataGridView1.Rows[j].Cells[i].EditedFormattedValue.ToString(), tmpFont);
    if (tmpSize.Width > tmpWidth)
    {
    tmpWidth = tmpSize.Width;
    }
    }
    if (dataGridView1.Columns[i].Visible)
    dataGridView1.Columns[i].Width = (int)tmpWidth;
    }
    }

  14. #294
    کاربر دائمی آواتار سار
    تاریخ عضویت
    اسفند 1382
    محل زندگی
    تورین-ایتالیا
    پست
    1,044

    دسترسي به پيكره بندي سيستم در CLR

    شايد براتون پيش بياد كه بخواهيد به فايل WEB.Config و يا App.Config در CLR دسترسي پيدا كنيد.
    اگر بخواهيد با استفاده از منوي Add Reference اين كار رو انجام بديد خواهيد ديد كه در فهرست Referenceها خبري از System.configuration نيست.
    براي اينكار بايد فايل پروژه ي خودتون رو كه ميتونه پسوند vbproj و يا csproj داشته باشه (بسته به اينكه با #C و يا VB نوشته شده) رو تو يك Editor متني باز كنيد و در بخش ItemGroup خط زير رو اضافه كنيد :
    <Reference Include="System.configuration" />
    فايل رو ذخيره كنيد و پروژه رو دوباره باز كنيد.

    حالا مي تونيد به Application Configuration دسترسي داشته باشيد.
    آخرین ویرایش به وسیله سار : یک شنبه 20 بهمن 1387 در 14:03 عصر

  15. #295

    Arrow ايجاد سايز سفارشي كاغذ براي چاپگر در سي شارپ

    add a custom paper size (a printer form) to the default printer and set the printer to use the custom paper size

    به سورس كد ضميمه شده مراجعه كنيد.

    برگرفته از : http://www.codeproject.com/KB/printi...per_sizes.aspx
    فایل های ضمیمه فایل های ضمیمه

  16. #296

    Arrow وابسته كردن يك نوع فايل (file extension) به برنامه شما

    programmatically associate a file type on the system with your application


    زماني كه ميخواهيد با دابل كليك كردن بر روي آيكن يك نوع خاص از فايلها (با پسوند دلخواه) آنها در برنامه شما باز شوند و ...

    برگرفته شده از :‌ http://www.codeproject.com/KB/dotnet...sociation.aspx
    فایل های ضمیمه فایل های ضمیمه

  17. #297

    كنترل سرويس SQL Server از طريق كدنويسي

    How to programmaticaly control and change status of MS SQL Server service or others

    ابتدا اسمبلي System.ServiceProcess.dll را به قسمت References پروژه ي خود بيافزاييد و سپس :
    System.ServiceProcess.ServiceController sc = 
    new System.ServiceProcess.ServiceController("MSSQLSERV ER");
    براي stop, start و يا pause كردن سرويس :
    sc.Stop();
    sc.Pause();
    sc.Start();
    و براي بدست آوردن حالت فعلي سرويس :
    sc.Status
    به كمك كلاس ServiceController قادريد كه ساير سرويسهاي ويندوز را نيز - بسته به داشتن مجوز لازم - كنترل نماييد.

  18. #298
    کاربر دائمی آواتار mdssoft
    تاریخ عضویت
    خرداد 1386
    محل زندگی
    تهران / ساری
    پست
    392

    پیدا کردن آتمی در یک مجموعه با استفاده از عبارت where در LINQ

    اول یه لیست درست می کنیم و اون رو با رشته های 0 تا 100 پر می کنیم .
    حالا می خواهیم با LINQ رشته های بزرگتر از 90 رو توی لیستمون پیدا کنیم :

    List<int> list = new List<int>();

    for (int i = 0; i <= 100; i++)
    list.Add(i);

    var find = (from item in list
    where item > 90
    select item);

    foreach (var value in find)
    Console.WriteLine(value);
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:27 عصر

  19. #299
    کاربر دائمی آواتار رافعی مهدی
    تاریخ عضویت
    فروردین 1387
    محل زندگی
    Sydney
    سن
    40
    پست
    272

    Smile رفع چشمك و پرش تصوير

    چنانچه براي انجام كارهاي گرافيكي خود از مجموعه ي +GDI استفاده مي كنيد، بسيار محتمل است كه به هنگام انجام اعمال گرافيكي سنگين مثل Pan و Zoom تصوير يا ترسيمات گرافيكي با پرش يا چشمك زدن هاي متوالي مواجه شويد. براي رفع اين مشكل مي توانيد خاصيت DoubleBuffered مربوط به Form يا UserControl اي كه در آن ترسيمات انجام مي گيرند را true كنيد.
    براي اطلاعات بيشتر در MSDN به ايندكس double buffering مراجعه كنيد.

  20. #300

    بدست آوردن ليست برنامه هاي نصب شده بر روي سيستم

    Get a list of installed software in C#‎

    private string Getinstalledsoftware()
    {
    string Software = null;

    string SoftwareKey = @"SOFTWARE\Microsoft\Windows\CurrentVersion\Uninst all";
    using (RegistryKey rk = Registry.LocalMachine.OpenSubKey(SoftwareKey))
    {
    foreach (string skName in rk.GetSubKeyNames())
    {
    using (RegistryKey sk = rk.OpenSubKey(skName))
    {
    try
    {
    if (!(sk.GetValue("DisplayName") == null))
    {
    if (sk.GetValue("InstallLocation") == null)
    Software += sk.GetValue("DisplayName") + " - Install path not known\n"; //Nope, not here.
    else
    Software += sk.GetValue("DisplayName") + " - " + sk.GetValue("InstallLocation") + "\n"; //Yes, here it is...
    }
    }
    catch (Exception ex)
    {
    //No, that exception is not getting away... :P
    }
    }
    }
    }
    return Software;
    }
    منبع : http://www.dreamincode.net/code/snippet1995.htm

  21. #301

    تست ارتباط با اينترنت از طريق پينگ كردن

    Check for internet connection in C#‎

    public bool isConnectionAvailable()
    {
    //build a list of sites to ping, you can use your own
    string[] sitesList = { "www.google.com", "www.microsoft.com" , "www.psychocoder.net" };
    Ping ping = new Ping();
    PingReply reply;
    bool _success = false;
    int notReturned = 0;
    try
    {
    for (int i = 0; i <= sitesList.Length; i++)
    {
    reply = ping.Send(sitesList[i], 10);
    if (reply.Status != IPStatus.Success)
    {
    notReturned += 1;
    }
    if (notReturned == sitesList.Length)
    {
    _success = false;
    throw new Exception(@"There doest seem to be a network/internet connection.\r\n
    Please contact your system administrator");
    }
    else
    {
    _success = true;
    }
    }
    }

    catch
    {
    _success = false;
    }
    return _success;
    }


    منبع : http://www.dreamincode.net/code/snippet1568.htm

  22. #302

    بدست آوردن سطر جاري در ديتاگريدويو

    Get current DataRow from a DataGridView instance.

    public DataRow GetCurrentRow(DataGridView dgv)
    {
    DataRowView drv = null;
    try
    {
    if (dgv.CurrentRow == null) { return null; }
    if (dgv.CurrentRow.DataBoundItem == null) { return null; }
    drv = (DataRowView)dgv.CurrentRow.DataBoundItem;
    }
    catch
    {
    return null;
    }
    return drv.Row;
    }

    منبع : http://www.dreamincode.net/code/snippet1435.htm

  23. #303

    بدست آوردن ميزان زمان روشن بودن كامپيوتر

    representation of the amount of time the computer has been on since the OS started.

    public string getUptime()
    {
    String strResult = String.Empty;
    strResult += Convert.ToString(Environment.TickCount / 86400000) + " days, ";
    strResult += Convert.ToString(Environment.TickCount / 3600000 % 24) + " hours, ";
    strResult += Convert.ToString(Environment.TickCount / 120000 % 60) + " minutes, ";
    strResult += Convert.ToString(Environment.TickCount / 1000 % 60) + " seconds.";
    return strResult;
    }


    منبع : http://www.dreamincode.net/code/snippet1555.htm

  24. #304

    ارسال و اجراي مستقيم كوئري در LINQ To SQL

    Directly Execute SQL Queries (LINQ to SQL)


    شما ميتوانيد صرفنظر از تواناييهاي LINQ To SQL كوئريهاي دلخواه خود را مستقيم براي SQL Server ارسال نماييد :
    Northwnd db = new Northwnd(@"c:\northwnd.mdf");
    IEnumerable<Customer> results = db.ExecuteQuery<Customer>
    (@"SELECT c1.custid as CustomerID, c2.custName as ContactName
    FROM customer1 as c1, customer2 as c2
    WHERE c1.custid = c2.custid"
    );
    منبع : http://msdn.microsoft.com/en-us/library/bb399403.aspx
    ...مرا به خانه ام ببر، اگرچه خانه؛ خانه نیست

  25. #305
    کاربر دائمی آواتار tthenry14plus
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    Tehran
    پست
    218

    تشخیص روشن یا خاموش بودن کلید های CapsLock,NumLock,ScrollLock به روشی بسیار بسیار ساده


    Microsoft.VisualBasic.Devices.Keyboard keyboard = new Microsoft.VisualBasic.Devices.Keyboard(); string COnOff = keyboard.CapsLock ? "On" : "Off"; string NOnOff = keyboard.NumLock ? "On" : "Off"; string SOnOff = keyboard.ScrollLock ? "On" : "Off"; MessageBox.Show("Caps Lock is " + COnOff + "\nNum Lock is " + NOnOff + "\nScroll Lock is " + SOnOff);
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:48 عصر

  26. #306

    نقل قول: 1001 نکته در سی شارپ

    با سلام و خسته نباشید
    من امروز یک فایل برای دانلود گذاشتم که چند امکان جدید C#‎ 3.0 رو بیان می نماید.
    نکته های بارز C#‎ 3.0
    فایل های ضمیمه فایل های ضمیمه

  27. #307
    کاربر دائمی آواتار tthenry14plus
    تاریخ عضویت
    مرداد 1386
    محل زندگی
    Tehran
    پست
    218

    فقط یک نمونه از یک فرم اجرا شود

    گاهی میخواهیم فقط یک نمونه از یک فرم اجرا شود.
    برای اینکار تابعی نوشتم که در هنگام باز کردن فرم نام فرممان را به تابع ارسال میکنیم، اگر فرم بسته باشد که آنرا باز میکند اما اگر باز باشد آنرا به اولین لایه ممکن انتقال میدهد.
    تابع:

    Boolean IsRunning(string formName)
    {
    foreach (Form frm inApplication.OpenForms)
    {
    if ((frm.Name == formName))
    {
    frm.BringToFront();
    return true;
    }
    }
    returnfalse;
    }

    مثال از نحوه استفاده:

    privatevoid OpenForm2_Click(object sender, EventArgs e)
    {
    Form2 af = newForm2();
    if (!IsRunning("Form2"))
    af.Show();
    }
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:49 عصر

  28. #308
    کاربر دائمی آواتار سار
    تاریخ عضویت
    اسفند 1382
    محل زندگی
    تورین-ایتالیا
    پست
    1,044

    نقل قول: نمونه برنامه های کوچک و مفيد در سي شارپ

    تبدیل مبنا با استفاده از Convert.ToString
    پارامتر اول عدد شما است و پارامتر دوم مبنای مورد نظر که میتواد 2،8،10 و 16 باشد

    long a = 999999999999999999;
    string b = Convert.ToString(a, 2);
    Console.WriteLine(b);
    Console.WriteLine(Convert.ToString(a, 8));
    Console.WriteLine(Convert.ToString(a, 16));
    Console.ReadKey();
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:49 عصر

  29. #309

    اجراي يك متود تنها با دانستن نام آن (بصورت رشته)

    براي مثال در تيكه كد زير دو متود Method1 و Method2 اجرا ميشوند :
    public partial class Form1 : Form
    {
    public Form1()
    {
    InitializeComponent();
    }

    public void Method1()
    {
    MessageBox.Show("Method1 invoked");
    }

    public void Method2()
    {
    MessageBox.Show("Method2 invoked");
    }


    private void Form1_Load(object sender, EventArgs e)
    {
    MethodInvoke();
    }

    private void MethodInvoke()
    {
    Type t = typeof(Form1);
    int i = 0;

    i++;
    string MethodName = "Method" + i.ToString();
    t.InvokeMember(MethodName, BindingFlags.Default | BindingFlags.InvokeMethod, null, this, null);

    i++;
    MethodName = "Method" + i.ToString();
    t.InvokeMember(MethodName, BindingFlags.Default | BindingFlags.InvokeMethod, null, this, null);

    }
    }

  30. #310

    اینترفیس INotifyPropertyChanged برای ایجاد یک رویداد ژنریک جهت تشخیص پروپرتی تغییر یافته

    اینترفیس مذکور دارای یک رویداد به نام PropertyChangedr می باشد.
    توسط این رویداد می توانید، رویدادی در کلاس خود داشته باشید که بتوانید تشخیص دهید که کدام یک از property ها مقدار آن تغییر کرده است.
    در واقع به صورت اتواتیک کلاینت شما متوجه خواهد شد که داده تغییر کرده است
    مثال



    class Student : System.ComponentModel.INotifyPropertyChanged
    {
    private string name;

    public string Name
    {
    get
    {
    return name;
    }
    set
    {
    if (value != name)
    {
    name = value;
    OnPropertyChanged("Name");
    }
    }
    }

    private string family;

    public string Family
    {
    get
    {
    return family;
    }
    set
    {
    if(value != family)
    {
    family = value;
    OnPropertyChanged("Family");
    }
    }
    }


    #region INotifyPropertyChanged Members

    public event System.ComponentModel.PropertyChangedEventHandler PropertyChanged;

    #endregion


    void OnPropertyChanged(string propertyName)
    {

    if (this.PropertyChanged != null)
    {
    this.PropertyChanged(this, new System.ComponentModel.PropertyChangedEventArgs(pro pertyName));
    }
    }
    }



    آرگومان e ، دارای خاصیتی به نام PropertyName می باشد، که توسط آ ن ، نام property که مقدار آن تغییر کرده استرا می توانید بدست آورید.
    به نحوه raise کردن این ایونت درپروپرتی ها دقت کنید
    آخرین ویرایش به وسیله Mahdi.Kiani : جمعه 25 مرداد 1387 در 01:06 صبح دلیل: اضافه کردن یک نکته

    مجموعه آموزشی Asp.Net Core Mvc کاملا به زبان فارسی(21 ماژول و 15 ساعت فیلم آموزشی همراه با سورس کامل تمرینات و پروژه عملی انجام شده در طول آموزشی)
    مشاهده جزئیات در آدرس http://www.mkiani.ir/blog/content/53084


    وب سایت : http://www.mkiani.ir
    پست الکترونیک : mkiani3000@gmail.com

    موفق و پیروز باشید.
    مهدی کیانی


  31. #311

    Smile محاسبه توان بدون استفاده از حلقه های تکرار و بازگشت

    کدی که از فرمول ریاضی زیر پیروی میکنه :



    کد برنامه تقدیم شما عزیزان :

    private void button1_Click(object sender, EventArgs e)
    {
    int a = Convert.ToInt32(textBox1.Text);
    // Number 1
    int b = Convert.ToInt32(textBox2.Text);
    // Number 2
    double res = Math.Pow(Math.E, b*Math.Log(a, Math.E));
    // Result of Power
    MessageBox.Show("Result of Power is = " + res.ToString());
    }

    -- ويرايش شده -- با تشكر از همكاري شما : جهت نظم بيشتر لطفا امضا را حذف و عنوان نكته را درج نماييد.
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:51 عصر

  32. #312

    Smile تکست باکسی که فقط عدد قبول میکند


    private void textBox1_TextChanged(object sender, EventArgs e)
    {
    string str = textBox1.Text;
    int f=0;
    foreach (char c in str)
    {
    if (char.IsDigit(c) == true)
    f++;
    else
    f--;
    }
    if (f != str.Length)
    {
    MessageBox.Show("Error");
    textBox1.Clear();
    }
    }
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:52 عصر

  33. #313

    نقل قول: 1001 نکته در سی شارپ

    اضافه کردن شماره سطر به دیتا گرید ویو
    در اونت RowPostPaint اگر دیتا گرید ویو تان RightToLeft بود بنویسید

    using (SolidBrush b = new SolidBrush(Color.Black))
    {
    e.Graphics.DrawString((e.RowIndex).ToString(),
    e.InheritedRowStyle.Font, b,
    (sender as DataGridView).Width - e.RowBounds.Location.X - 15,
    e.RowBounds.Location.Y + 4);
    }

    و اگر چپ به راست بود بنویسید

    using (SolidBrush b = new SolidBrush(Color.Black))
    {
    e.Graphics.DrawString((e.RowIndex).ToString(),
    e.InheritedRowStyle.Font, b,
    e.RowBounds.Location.X + 15,
    e.RowBounds.Location.Y + 4);
    }
    اگر Net. نمی دانید وارد نشوید.

  34. #314

    Post نشان دادن کامل تاریخ و زمان سیستم با متود To String


    DateTime mytime = newDateTime();
    string time;
    mytime = DateTime.Now;
    time = mytime.ToString("F");
    MessageBox.Show(time);


    موفق و پیروز باشید !!!!
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:52 عصر






  35. #315

    Post تولید رشته های تصادفی بصورت کاملا دستی

    سلام دوستان ، این برنامه که نوشتم ، رشته های تصادفی بصورت کاملا دستی ، تولید

    میکنه با هر طولی و بدون استفاده از امکانات سی شارپ !!!!

    public string txt_Generator(int size)
    {
    int[] a = new int[size];
    Random rnd = new Random();
    for (int i = 0; i < size; i++)
    {
    a[i] = 65 + rnd.Next() % 26;
    }
    string str = "";
    foreach (int j in a)
    {
    str += (char)(j);
    }
    return str;
    }


    موفق و پیروز باشید !!!
    آخرین ویرایش به وسیله Mahmoud.Afrad : چهارشنبه 17 تیر 1394 در 15:53 عصر






  36. #316
    کاربر دائمی آواتار danial82
    تاریخ عضویت
    مرداد 1384
    محل زندگی
    iran_tehran
    پست
    531

    نقل قول: 1001 نکته در سی شارپ

    انتخاب و فعال شدن یک سطر در dataGridView با مقدار خاص

    for (int i = 0; i < dataGridView1.Rows.Count-1; i++)
    {

    if (dataGridView1.Rows[i].Cells[ ایندکس ستون مورد جستجو].Value.ToString() == "مقدار مورد نظر")
    {
    dataGridView1.Rows[i].Selected = true;
    }
    }


    for (int i = 0; i < dataGridView1.Rows.Count-1; i++)
    {

    if (dataGridView1.Rows[i].Cells[2].Value.ToString() == "Johnson")
    {
    dataGridView1.Rows[i].Selected = true;
    }
    }


  37. #317
    کاربر دائمی آواتار Esmail Solhkhah
    تاریخ عضویت
    مهر 1385
    محل زندگی
    بورکینافاسو
    پست
    1,774

    Post نقل قول: 1001 نکته در سی شارپ

    خیلی وقتا نیاز داریم تو فرمهایی که به نحوی از دیتا گرید استفاده کردن به کاربر اجازه بدیم بتونه اونا رو چاپ کنه !
    فایل ضمیمه حاوی یه کلاس هست که به عنوان سازنده دیتا گرید رو میگیره و میتونه با دومتد یا چاپ کنه یا پیش نمایش رو نشون بده
    در ضمن امکانات دیگه ای هم مثل نوشتن متن رو هدر گزارش و .. داره که اونا رو هم تو فایل ضمیمه قرار دادم. تو فایل Usage.txt
    فایل های ضمیمه فایل های ضمیمه

  38. #318
    کاربر دائمی
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    اصفهان-تهران
    پست
    212

    نقل قول: 1001 نکته در سی شارپ

    پاک کردن هم زمان تمام TextBox ها :
    بعضی وقتا تعداد TextBox ها توی فرمتون خیلی زیاده و سخته که هر بار تمام اونها رو پاک کنید پس از روش زیر استفاده کنید تا تمام TextBox ها را یکجا Clear کنید.


    public void ClearTextBoxs()
    {
    foreach (Control txt in this.Controls)
    {
    if (txt.GetType().Name == "TextBox")
    txt.Text = "";
    }
    }



  39. #319
    کاربر دائمی
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    اصفهان-تهران
    پست
    212

    نقل قول: 1001 نکته در سی شارپ

    شاید شما هم وقتی در .NET برنامه نویسی گرافیکی می کنید به این مشکل بر خورده باشید.
    وقتی می خواهید روی یک فرم یا هر کنترل دیگری چیزی رسم کنید ابتدا با استفاده از متد CreateGraphics ان را صدا می زنید و سپس چیزی روی آن رسم می کنید. یعنی:


    Graphics gr = form1.CreateGraphics();
    // you draw something here


    ولی پس از رسم مشاهده می کنید که به یک بار رفت و آمد صفحه همه چیز پاک شده است .
    برای حل این مشکل کافیست به صورت زیر عمل کنید :


    Bitmap bmp = new Bitmap(from1.Width, form1.Height);
    Graphics gr = Graphics.FromImage((Image)bmp);
    gr.Clear(Color.White);
    // draw something in gr
    gr.dispose();
    form1.BackgroundImage = bmp;


    منبع : http://valipour.blogfa.com

  40. #320
    کاربر دائمی
    تاریخ عضویت
    شهریور 1387
    محل زندگی
    اصفهان-تهران
    پست
    212

    بدست آوردن زبان های نصب شده در سیستم:


    string s;
    foreach (InputLanguage Language in InputLanguage.InstalledInputLanguages)
    {
    s = Language.LayoutName;
    listBox1.Items.Add(s);
    }

    http://www.projeha.blogfa.com/
    آخرین ویرایش به وسیله mary3541 : دوشنبه 25 شهریور 1387 در 15:50 عصر دلیل: منبع

صفحه 8 از 14 اولاول ... 678910 ... آخرآخر

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

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

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