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

نکته شماره 13 :

 

public void Draw2File ()
{
Bitmap bmp = new Bitmap (500, 400);
Graphics gr = Graphics.FromImage (bmp);
Rectangle rect = new Rectangle (20, 20, 450, 350);
gr.DrawRectangle (Pens.Red, rect);
gr.FillRectangle(Brushes.Pink, rect);
gr.DrawString ("Salam", new Font ("Arial", 10), Brushes.Red, 50, 50);
gr.DrawArc (Pens.Red, 30, 30, 60, 60, 0, 180);
gr.DrawEllipse(new Pen(Color.Yellow, 3), new Rectangle(200, 100, 200, 200));
"fontstyle2">٢٩
bmp.Save ("C:\\1.bmp");
bmp.Dispose ();
gr.Dispose ();
}

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

نکته شماره 12 :

 

privatevoid button1_Click(object sender, EventArgs e)
{
for (int i = 0; i < dataGridView1.RowCount; i++)
{
dataGridView1.Rows[i].ReadOnly = true;
}
dataGridView1.Rows[dataGridView1.CurrentRow.Index].ReadOnly = false;
}

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

نکته شماره 11 :

 

//حذف تمام فضاهای سفید
string Name = " String Manipulation " ;
string NewName = Name.Trim();
 
//حذف فضای سفید (حرفوفی خاص) از آخر رشته
string Name = " String Manipulation " ;
 
char[] MyChar = {' ','n'};
string NewName = Name.TrimEnd(MyChar);
 
 
//حذف فضای سفید (حرفوفی خاص) از ابتدای رشته
string Name = " String Manipulation " ;
 
char[] MyChar = {' ','S'};
string NewName = Name.TrimStart(MyChar);
 
//جستجوی یک رشته در رشته دیگر
string MainString = "String Manipulation";
string SearchString = "pul";
int FirstChr = MainString.IndexOf(SearchString);
 
 
//جایگزین کردن بخشی از رشته
string MainString "String Manipulatin";
string CorrectString = MainString.Replace("Manipulatin", "Manipulation");
 
 
//حذف کردن بخشی از رشته
string MainString = "S1111tring Manipulation";
string NewString = MainString.Remove(1,4);
 
//تفکیک یک رشته
string MainString = "String Manipulation";
string [] Split = MainString.Split(new Char [] {' '});
 
MessageBox.Show(Convert.ToString(Split[0]));
MessageBox.Show(Convert.ToString(Split[1]));

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

نکته شماره 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());
 
  BLOGFA.COM