آموزش سی شارپ

بدست آوردن اختلاف دو تاریخ

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

نواختن یک فایل صوتی با فرمت Wave

گرفتن و تسخیر کردن (Capture) تصویر صفحه نمایش

طریقه تغییر دادن خاصیت FontStyle یک کنترل در زمان اجرا

تابع Dispose

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

تابع show

تفاوت بین Show و ShowDialog

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

تابع close

جابه جایی فرم در سی شارپ

تابع CreateControl

تابع Hide

نمایش صفحه وب

تابع Focus

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

دریافت عکس و ذخیره در متن

تابع active

خط جدا کننده

حذف آیتم های انتخاب شده در لیست باکس

حذف کاراکتر فاصله در رشته

تبدیل حروف کوچک به حروف بزرگ

تبدیل حروف بزرگ به حروف کوچک

تابع GetType

حذف کاراکترهای رشته

الحاق اجزای یک آرایه

insert در رشته

گرفتن نوع آبجکت

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

جستجوی یک رشته در انتهای رشته دیگر

کپی کردن یک رشته

تابع equals

Contains در رشته

الحاق دو رشته با هم

CompareTo در رشته

مقایسه ترتیبی در رشته

جلوگیری ازویرایش کامبوباکس

در رشته compare

غیر فعال کردن دکمه close

تعداد خط ها در تکست باکس

رنگی شدن سطر های دیتاگریدویو

ارسال ایمیل با سی شارپ

ایجاد طیف رنگ

اتصال اینترنت

نمایش عکس داخل PictureBox در برنامه Windows Photo Viewer

غیر فعال کردن راست کلیک

متد

دستور goto

حلقه foreach

آرایه با استفاده از for

آرایه

break و continue در حلقه

حلقهfor

حلقه do while

تفاوت while و do while

حلقه while

دستور switch

دستورif

تفاوت دستور if با دستور swich

بازگردانی اطلاعات(restore)

حذف فایل های یک پوشه

نمایش فرم دوم در فرم اول

تغییر رنگ تصادفی فرم

فارسی کردن اعداد در تکست باکس

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

جستجو بین دو عدد در لینکیو

تغییر رنگ پس زمینه با استفاده از کد

جستجو بین دوتاریخ

گذاشتن نوشته تومان کنار عدد در دیتاگریدویو

پشتیبان گیری(backup)

انتخاب عکس از سیستم

ویرایش اطلاعات در لینکیو

حذف اطلاعات در لینکیو

گذاشتن اطلاعات دیتاگریدویو در تکست باکس های مورد نظر

جستجو در لینکیو

بزرگترین عدد در یک ستون دیتاگریدویو

ارور پرووایدر(errorProvider)

آوردن اطلاعات یک جدول از دیتابیس داخل دیتاگریدویو(select)

ذخیره کردن عکس در لینکو

تبدیل کد باینری به عکس

ظاهر و محو شدن فرم

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

insert در لینکیو

تبدیل تاریخ میلادی به شمسی

انتقال فوکوس با زدن اینتر

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

جمع ارقام یک عدد

حرکت متن

minimize-maximize

خواص مهم فرم

خواص label

اعدا تصادفی یا رندوم

یک عدد تصادفی بین دو عدد

تبدیل تاریخ میلادی به شمسی

کاربرروی درایوها

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

ایجاد نام برای یک فایل

بدست اوردن نام کامپیوتر و…..

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

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

ارسال متغیر به صفحه بعد با استفاده از url

ایجاد فرم دایره ای شکل

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

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

ریختن اعدا آرایه در لیست باکس

رسم چند ضلعی توپر

کشیدن نقاشی با توابع گرافیکی و ذخیره فایل

ویرایش یک سطر دیتاگریدویو

انجام عملیات برروی رشته ها

انتقال مقادیر خاصیت Text دو تکست باکس از طریقDrag & Drop

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

مرتب کردن باینری کلاس در فایل

خاموش و ریستارت و …. کردن سیستم با کد سی شارپ

بستن وباز کردن خودکار برنامه

کامبوباکس فقط خواندی

محو شدن تدریجی فرم

اجرا کردن فایل فلش دربرنامه

آماده به کار(Standby) و خواب زمستانی( Hibernate) کردن کامپیوتر

پیکچر باکس

تابع محاسبه ب.م.م به روش بازگشتی

تابع معکوس یک رشته

ذخیره کردن هر نوع فایلی در متغیر byte

تنظیم تکس باس برای دریافت ورودی واحد پول "تومان"

بدست آوردن میزان مصرف Cpu

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

چاپ لوزی توسط حلقه های تودرتو در سی شارپ

وسط چین کردن عنوان فرم

چک کردن تعداد زیادی radio button

textbox با قابلیت autocomplet

مرتب کردن باینری کلاس در فایل

نکته شماره 2 :

 

using System.IO;
using System.Runtime.Serialization;
 
using System.Runtime.Serialization.Formatters.Binary;
public void SerializeObject(string filename, Object o)
{
Stream stream = File.Open(filename, FileMode.Create);
BinaryFormatter bFormatter = new BinaryFormatter();
bFormatter.Serialize(stream, o);
stream.Close();
}

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

نکته شماره 1 :

 

System.Diagnostics.Process.Start("paint.exe");
 
چنانچه فایل اجرایی نباز به آرگومان خط فرمان داشته باشد:
 
System.Diagnostics.Process.Start("paint.exe", "d:\\gol.bmp");
 
مثال بالا تصویر gol را در paint باز میکند

 

کامبوباکس فقط خواندی

نکته شماره 5 :

 

از قسمت event  کی پرس رو پیدا کنید و روش دابل کلیک کنید .

 

privatevoid comboBox1_KeyPress(object sender, KeyPressEventArgs e)
{
e.Handled = true;
}

بستن وباز کردن خودکار برنامه

نکته شماره 4 :

 

Application.Restart();

خاموش و ریستارت و …. کردن سیستم با کد سی شارپ

نکته شماره 3 :

 

[DllImport("user32.dll")]
public static extern int ExitWindowsEx(int uFlags, int dwReason);
 
 
// Reboot
ExitWindowsEx(2, 0);
 
// Reboot
System.Diagnostics.Process.Start("ShutDown", "/r");
 
 
// Shutdown
ExitWindowsEx(1, 0);
 
 
// Shutdown
System.Diagnostics.Process.Start("ShutDown", "/s");
 
 
// Log Off
ExitWindowsEx(0, 0);
 
// Force LogOff
ExitWindowsEx(4, 0);
 
 
// Log Off
System.Diagnostics.Process.Start("ShutDown", "/l");
 

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

نکته شماره 33 :

 

private void dg_KeyDown(object sender, KeyEventArgs e)
{
    if (e.KeyData == Keys.Enter)  
    {                             
        e.SuppressKeyPress = true;
    }                             
}


حرکت متن

نکته شماره 32 :

 

در این قسمت ابتدا یک Label داریم که متن مورد نظر را داخل آن می نویسیم و سپس یک Timer را در فرم قرار می دهیم و سپس به قسمت Properties آن می رویم و مقدار Enable آن را True و مقدار Interval آن را ۱۰ قرار می دهیم.
سپس وارد رویداد Tick مربوط به Timer می شویم و سورس کد زیر را می نویسیم.

 

private void timer1_Tick(object sender, EventArgs e)
{
    string location;
    label1.Left = label1.Left + 2;
    location = label1.Left.ToString();
    if (location == (550).ToString())
        label1.Left = -220;
}
 
 
در کد بالا ابتدا متن مورد نظر که داخل label است به صورت ۲ تا ۲ تا حرکت می کند و هر بار مکانی که متن در آن قرار دارد داخل متغیر location ریخته می شود و زمانی که مقدار location برابر ۵۵۰ شد یعنی اینکه متن به انتهای فرم رسیده است و باید متن در مکان -۲۲۰ فرم قرار بگیرد تا از ابتدا شروع به حرکت کند.
 
 

minimize-maximize

نکته شماره 31 :

 

private void button3_Click(object sender, EventArgs e)
{
    this.WindowState = FormWindowState.Minimized;
}
 
 
private void button2_Click(object sender, EventArgs e)
{
    this.WindowState = FormWindowState.Maximized;
}
 
 

خواص مهم فرم

نکته شماره 30 :

 

برخی از خواص مهم فرم عبارتنداز:
خاصیت name : برای تعیین نام کنترل (فرم) بکار میرود. نام فرم از قانون نامگذاری متغیرها و کنترلها پیروی میکند. بعنوان مثال نام اولین فرم Form1 میباشد که با استفاده از خاصیت Name میتوان این نام را تغییر داد این خاصیت در داخل پرانتز قرار دارد تا در ابتدای لیست خواص قرار گیرد.
خاصیت AllowDrop : مشخص میکند آیا داده هایی که که کاربر با ماوس به فرم ارسال میکند توسط فرم پذیرش شود یا خیر.
خاصیت ActiveForm : فرم فعال فعلی را در برنامه مشخص میکند.
خاصیت AutoSize : تعیین میکند آیا اندازه فرم با توجه به کنترلهای روی فرم بطور خودکار تغییر کند یا خیر.
خاصیت AutoScrollMargins : حاشیه های نوار جابه جایی را تعیین میکند و از دسته خواص تودرتو میباشد.
خاصیت AutoScrollMinsize : اندازه نوار جابه جایی را تعیین میکند و دارای خواص Width (عرض نوار جابه جایی) و Height (ارتفاع نوار جابه جایی) است.
خاصیت BackColor : برای تعیین رنگ زمینه فرم به کار میرود.
خاصیت BackgroundImage : با این خاصیت میتوان تصویری را برای زمینه فرم انتخاب کرد.
خاصیت CancelButton : دکمه ای را تعیین میکند که اگر کاربر کلید ESC را فشار دهد، دستورات مربوط به رویداد Click آن دکمه اجرا میشود.
خاصیت CausesValidaion : تعیین میکند آیا کنترل اعتبارسنجی عمل کند یا خیر.
خاصیت ContextMenu : نام منویی را تعیین میکند که اگر کاربر کلیک راست کرد باید ظاهر شود.
خاصیت ControBox : تعیین میکند آیا در فرم دکمه های بیشینه، کمینه و بستن ظاهر شود یا خیر. اگر این خاصیت به False تغییر یابد هیچ یک از دکمه ها در فرم ظاهر نمیشوند.
خاصیت Cursor : شکل مکان نما را تعیین میکند. ۲۹ نوع مکان نما وجود دارد میتوان با کلیک کردن یکی از آنها را انتخاب کرد.
خاصیت DockPadding : مرز داخل فرم را برای کنترلهایی که به آن الحاق میشوند، مشخص میکند.
خاصیت DrawGrid : تعیین میکند آیا در زمان طراحی نقاط شبکه ای بر روی فرم طاهر شوند یا خیر. در حالت پیش فرض این نقاط روی فرم ظاهر میگردند.
خاصیت Enabled : تعیین میکند آیا فرم فعال است یا خیر. اگر فرم غیرفعال باشد (مقدار False این خاصیت) به هیچ رویدادی پاسخ نمیدهد.
خاصیت Font : برای تعیین فونت بکار میرود.
خاصیت ForeColor : با این خاصیت میتوان رنگ متن را تعیین کرد.
خاصیت FormBorderStyle : نوع حاشیه فرم را تعیین میکند.
خاصیت GridSize : تعداد پیکسلهایی را تعیین میکندکه یک نقطه شبکه ای باید در هنگام طراحی در آنها نمایش داده شود. بصورت پیشفرض ۸;۸ است که اولین ۸ خاصیت عرض و دومین ۸، خاصیت ارتفاع را تعیین میکند.
خاصیت HelpButton : تعیین میکند آیا دکمه علامت سوال در فرم نمایش داده شود یا خیر.
خاصیت ImeMode : حالت ویراستار متد ورودی را برای فرم تعیین میکند.
خاصیت IsMdiContainer : اگر True باشد فرم میتواند واسط چند سندی را در برگیرد.
خاصیت KeyPreview : تعیین میکند آیا رویدادهای صفحه کلید را قبل از رویدادهای کنترلی که مکان نما در آن قرار دارد ، بپذیرد یا خیر.
خاصیت Language : زبان کار کردن کنترل را مشخص میکند.
خاصیت Location : مکان قرار گرفتن کنترل را تعیین میکند.
خاصیت Locked : تعیین میکند آیا محتویات فرم قابل تغییر باشند یا خیر.
خاصیت MaximizeBox : تعیین میکند آیا دکمه بیشینه در عنوان فرم نمایش داده شود یا خیر.
خاصیت MaximizeSize : با این خاصیت میتوان حداکثر اندازه فرم را تعیین کرد.
خاصیت Menu : نام منویی را تعیین میکند که باید در فرم نمایش داده شود.
خاصیت MinimizeBox : تعیین میکند آیا دکمه کمینه در عنوان فرم نمایش داده شود یا خیر.
خاصیت Opacity : ممیزان شفافیت فرم را تعیین میکند.
خاصیت MinimizeSize : با این خاصیت میتوان حداقل اندازه فرم را تعیین کرد.
خاصیت RightToLeft : جهت نمایش اطلاعات را مشخص میکند در حالت پیش فرض اطلاعات از چپ به راست نمایش داده میشوند.
خاصیت ShowIcon : تعیین میکند آیا آیکن مربوط به منوی سیستمی فرم نمایش داده شود یا خیر.
خاصیت ShowInTasker : تعیین میکند وقتی که اندازه فرم کمینه شود، آیکن مربوط به فرم در نوار وضعیت ویندوز ظاهر شود یا خیر.
خاصیت Size : اندازه فرم را به پیکسل تعیین میکند.
خاصیت StarPosition : در هنگام شروع اجرای برنامه ، محل قرار گرفتن فرم را تعیین میکند.
خاصیت Tag : شی ءای را تعیین میکند که اطلاعاتی راجع به کنترل را نگهداری میکند.
خاصیت Text : متنی را مشخص میکند که در نوار عنوان فرم ظاهر خواهد شد.
خاصیت TopMost : مشخص میکند آیا فرم همواره در بالای همه پنجره های یک برنامه کاربردی باشد یا خیر.
خاصیت TransparencyKey : وقتی رنگی در این خاصیت تعیین میشود، فضایی از فرم که با رنگ زمینه انتخاب شده است، شفاف خواهد بود.
خاصیت WindowState : وضعیت پنجره فرم را تعیین میکند.
خاصیت AutoScaleMode : متد مقیاس گذاری خودکار را برای فرم تعیین میکند.
خاصیت AutoSizeMode : روش تغییر اندازه خودکار فرم را تعیین میکند.
خاصیت BackgroundImafeLayout : طرح تصویر زمینه را مشخص میکند.
خاصیت Padding : لایه گذاری بین کنترلهای فرم را تعیین میکند.
خاصیت AutoValidate : تعیین میکند وقتی فوکس کنترلهایی که روی فرم قرار دارندتغییر کنند، بطور خودکار اعتبارسنجی شوند یا خیر.

اعدا تصادفی یا رندوم

نکته شماره 28 :

 

اگر بخواهیم عددهای تصادفی کنار هم چاپ شوند از کد زیر استفاده میکنیم:

 

Random generator = new Random();
 
 
for (int i = 1; i <= 10; i++)
{
    Console.Write(generator.Next());
}
 

۵۶۷۳۱۳۱۵۸۳
۲۰۷۵۸۲۷۷۶۹
۵۲۳۰۷۹۰۹۶۲
۸۵۳۴۲۰۰۱۹۶
۱۱۸۱۰۶۱۰۷۱

اگر بخواهیم عددهای رنوم زیر هم چاپ بشن از کد زیر استفاده میکنیم:

 

Random generator = new Random();
 
 
for (int i = 1; i <= 10; i++)
{
    Console.WriteLine(generator.Next());
}
 

۵
۶
۸
۲
۴
۷
۳
۴
۶
۹

مثال : در هر بار اجرا یک پیغام میدهد .

 

using System;
 
namespace RandomMessage
{
    class Program
    {
        static void Main()
        {
            Random generator = new Random();
 
            int messageNumber = generator.Next(1, 4);
 
            switch (messageNumber)
            {
                case 1:
                    Console.WriteLine("Hello to you my friend.");
                    break;
                case 2:
                    Console.WriteLine("Good day to you sir/mam.");
                    break;
                case 3:
                    Console.WriteLine("Have a happy day.");
                    break;
            }
        }
    }
}
 

خواص label

نکته شماره 29 :

 

۱-Backcolor:رنگ ایکون لیبل را تغییر می دهد.(پشت زمینه) میتوان مجددا reset کرد تا به حالت پیشفرض برگردد.
۲-borderstyle: حاشیه دور کادر لیبل را تغییر می دهد.
۳-flatestyle: کمی وضعیت نمایش لیبل را تغییر می دهد. برجسته می شود.
۴-forecolor: رنگ نوشته را تغییر می دهد.
۵-font:می توان انواع تغییرات را روی نوشته انجام داد از جمله تغییر سایز – رنگ – ایتالیک- بولد- نوع فونت-و غیرو
۶-image:یک تصویر پس زمینه روی لیبل قرار گیرد.البته از ایکون استفاده گردد بهتر داخل کادر قرار می گیرد.imsgealin که از زیر مجموعه ان است جابجایی تصویر را انجام می دهد.
۷-location:محل قرارگیری لیبل در فرم را تغییر می دهد که با دراگ کردن نیز امکان پذیر است.
۸-righttoleft: زمان نوشتن فارسی روی لیبل بکار میرد.
۹-visibl: اگر خواستیم یک شئی موقع اجرا به نمایش در نیاید به حالت fals قرار گیرد.
۱۰-cursor: نمایش شکل موس را در روی شئ تغییر می دهد.
۱۱-text: نوشته روی لیبل را تغییر میدهد.
۱۲-name: نامه شیئی هنگام برنامه نویسی در این قسمت مشخص می شود.

یک عدد تصادفی بین دو عدد

نکته شماره 27 :

 

Random r = new Random();
int num=r.Next(Convert.ToInt32(TextBox1.Text), Convert.ToInt32(TextBox2.Text));
Response.Write(num.ToString());

تبدیل تاریخ میلادی به شمسی

نکته شماره 26 :

 

PersianCalendar p = new PersianCalendar(); 
DateTime dmiladi = new DateTime();
dmiladi = DateTime.Now;
LbDate.Text = p.GetYear(dmiladi).ToString() + "/" + p.GetMonth(dmiladi).ToString() + "/" + p.GetDayOfMonth(dmiladi).ToString();

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

نکته شماره 24 :

 

برای این کار بر روی یک باتون کلیک کرده . اگر میخواهیم سایت مورد نظر با مرورگر اینترنت اکسپلورر باز بشه کد اول و اگر میخواهید با موزیلا باز بشه کد دوم رو میذاریم.

 

اینترنت اکسپلورر:
 
System.Diagnostics.Process.Start("iexplore.exe", "http://nofaa.ir");
 
موزیلا:
 
System.Diagnostics.Process.Start("C:\Program Files\Mozilla Firefox\FireFox.exe",
 
 
  BLOGFA.COM