تبلیغات
4linecode - مطالب آموزش C#.NET

جستجو

 

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

سه شنبه 11 مهر 1391   10:39 ق.ظ


نوع مطلب : آموزش C#.NET ،

using System.Globalization;
 
PersianCalendar clsPC = new PersianCalendar();
DateTime clsDT = clsPC.ToDateTime(1357, 11, 01,0,0,0,0);


نوشته شده توسط : Mehran Roohi Karimi

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

یکشنبه 24 اردیبهشت 1391   04:38 ب.ظ


نوع مطلب : آموزش C#.NET ،

string myString = "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 myString = @"This is the first line of my string.
This is the second line of my string.
This is the third line of the string.";


نوشته شده توسط : Mehran Roohi Karimi

اجرای یک Application با استفاده از کد

جمعه 22 اردیبهشت 1391   05:22 ب.ظ


نوع مطلب : آموزش C#.NET ،

برای اجرای برنامه Paint از کد زیر استفاده میکنیم:

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

برای نمایش یک عکس:

System.Diagnostics.Process.Start("mspaint.exe", "c:\\Test.bmp");


نوشته شده توسط : Mehran Roohi Karimi

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

یکشنبه 10 اردیبهشت 1391   12:20 ب.ظ


نوع مطلب : آموزش C#.NET ،

برای بدست آوردن مسیر فولدر Program Files بصورت زیر عمل میکنیم:

string path = Environment.GetFolderPath(Environment.SpecialFolder.ProgramFiles);

سایر مسیرها قابل دستیابی با این روش:

Desktop, MyDocuments, System, ...


نوشته شده توسط : Mehran Roohi Karimi

تغییر خاصیت FontStyle در زمان اجرا

جمعه 1 اردیبهشت 1391   11:07 ق.ظ


نوع مطلب : آموزش C#.NET ،

برای تغییر این خاصیت در یک کنترل، بطور مثال TextBox،بصورت زیر کد مینویسیم:

textBox1.Font = new Font(textBox1.Font, FontStyle.Bold | FontStyle.Italic | FontStyle.Underline);


نوشته شده توسط : Mehran Roohi Karimi

جلوگیری از باز شدن فرم در حال اجرا

چهارشنبه 30 فروردین 1391   02:37 ب.ظ


نوع مطلب : آموزش C#.NET ،

با استفاده از الگوی Generic Singleton میتوان از باز شدن مجدد فرمی که داخل برنامه در حال اجرا هست، جلوگیری کرد. یک کلاس در پروژه ایجاد و کد زیر رو داخلش بنویسید:

public class SingletonProvider<T> where T : new()
{
    public static T Instance
    {
        get
        {
            return SingletonCreator.Instance;
        }
    }
    class SingletonCreator
    {
        private static T objInstance;
        public static T Instance
        {
            get
            {
                Form objForm = objInstance as Form;
                if (objInstance == null || objForm.IsDisposed == true)
                    objInstance = new T();
                return objInstance;
            }
        }
    }
}

حالا برای استفاده، مثلا در فرم MDI  وقتی میخوایم از منو یک فرم رو صدا بزنیم، با استفاده از کد زیر، دیگه امکان باز شدن مجدد فرم (یک فرم که باز هست رو دوباره بازش کنیم) از بین میره:

FormName objForm = SingletonProvider<FormName>.Instance;
objForm.MdiParent = this;
objForm.Show();


نوشته شده توسط : Mehran Roohi Karimi

انتقال آیتمهای یک آرایه عددی به ListBox

شنبه 26 فروردین 1391   09:36 ق.ظ


نوع مطلب : آموزش C#.NET ،

ی ListBox و ی Button به فرم اضافه کنید. کد زیر رو پشت دکمه بنویسید:

int[] intNumber = { 1, 2, 3, 4, 5 };
object[] objNumber = new object[intNumber.Length];
intNumber.CopyTo(objNumber, 0);           
listBox1.Items.AddRange(objNumber);


نوشته شده توسط : Mehran Roohi Karimi

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

جمعه 19 اسفند 1390   11:37 ق.ظ


نوع مطلب : آموزش C#.NET ،

مشکلی که در این کار هست برنامه نویس میخواد بعد فرم Login و بررسی صحت کلمه و کد عبور، این فرم بسته بشه و کاربر به فرم اصلی برسه در اولین نگاه میتونیم:

this.Hide();
frmMain frmForm = new frmMain();
frmForm.Show();

اینطوری فرمتون  باز بعضی مواقع دیده میشه و یا می افته پشت فرم های دیگه، ضمن اینکه فضای حافظه بیخودی اشغال میمونه. در پایان هم زمانی که دیگه میخواید از کل برنامه خارج بشید میتونید از کد زیر استفاده کنید که معادل End در وی بی هست:

Application.Exit();

روش دوم استفاده از Thread هستش که بحثش خیلی مفصله. تکه کد زیر باعث میشه فرم Login بسته و بلافاصله فرم اصلی دیده بشه:

System.Threading.Thread objThread = new System.Threading.Thread(new System.Threading.ThreadStart(RunForm));
objThread.IsBackground = false;
objThread.Start();
this.Close();

void RunForm()
{
     Application.Run(new frmMain());
}

در حالت معمول، بدون استفاده از Thread قبل از باز شدن فرم اصلی با بستن فرم Login برنامه به پایان میرسه. اما از معایب این روش که من نتونستم این ایراد رو رفع کنم و امیدوارم که دوستان جهت رفع این ایراد منو راهنمایی کنن، استفاده از دیالوگها مثل Open یا Save هستش که با باز شدن ایتها برنامه دچار خطا میشه.

در روش سوم که همچی عالی پیش میره و من ازین روش استفاده میکنم. شما میتونید تو رویداد Load فرم اصلی، فرم Login رو بصورت ShowDialog نمایش بدید:

this.Hide();
using (frmLogin objForm = new frmLogin())
{
    if (objForm.ShowDialog() == DialogResult.OK)
    {
        this.Show();
    }
    Else
        this.Close();
}


نوشته شده توسط : Mehran Roohi Karimi