نکات مهم در CSharp

RIG

متخصص C#.net
با سلام .
هدف از ایجاد پست اینه که بتونیم به نحوی دانسته هامون رو مورد استفاده دیگران قرار بدیم و همچنین چیز هایی یاد بگیریم . نیازی نیست که بخواهیم موارد بسیار پیشرفته رو حتما" اینجا قرار بدیم . ما می تونیم از ساده ترین نکات هم استفاده کنیم . هر نکته بدرد بخوری از خود کد گرفته تا تنظیم محیط و .... که باعث میشه که کسی نکته ی جدیدی رو یاد بگیره دریغ نکنین.
در ضمن لطفا" نکته ای بگذارید و یا بردارید و از جملات غیر مرتبط استفاده نکنید . چون رویه این موضوع از مسیر خودش خارج میشه و باعث .....
از همکاری همه شما متشکرم.
 

tina.programer

عضو جدید
برای درج ساعت بصورت لحظه ای یه Lable قرار بدید توی فرم بهمراه یه Timer ، بعد

مشخصات تایمر رو اینطوری اعمال کنین ، Enable =true و و Intraval=1000 بعد روی تایمر کلیک کنید .

و بنویسید :

کد:
lbl_time.Text= DateTime.Now.ToLongTimeString();
 

tina.programer

عضو جدید
نحوه درج تاریخ شمسی

نحوه درج تاریخ شمسی

من برای درج تاریخ شمسی خیلی گشتم خیلی راه های پیچیده و زیادی گفته شده بود تو نت اما من به آسان ترینش دست یافتم :D

یه Lable بزارید بعد تو لود فروم بنویسید .

کد:
  System.Globalization.PersianCalendar pc = new System.Globalization.PersianCalendar();

            string Date = pc.GetYear(DateTime.Now) + "/" + pc.GetMonth(DateTime.Now) + "/" + pc.GetDayOfMonth(DateTime.Now);
            lbl_date.Text = Date;

بجای lbl_date.text نام لیبل خودتونو بزارید . :heart::heart::heart::heart::gol::gol::gol:
 

tina.programer

عضو جدید
درج تاریخ شمسی 2 با تعیین روز هفته

درج تاریخ شمسی 2 با تعیین روز هفته

چرا کسی توی این تاپیک نکته نمیزاره ؟ :confused:

ابتدا use : (در قسمت بالای قرم)
کد:
[SIZE=3]using System.Globalization[/SIZE];

سپس داخل فرم یه کلاس باز می کنیم :

کد:
[LEFT][SIZE=3]public string miladi2shamsi(DateTime _date )[/SIZE][/LEFT]
 [LEFT][SIZE=3]        {[/SIZE][/LEFT]
 [LEFT][SIZE=3]            PersianCalendar pc=new PersianCalendar();[/SIZE][/LEFT]
 [LEFT][SIZE=3]            StringBuilder sb=new StringBuilder();[/SIZE][/LEFT]
 [LEFT][SIZE=3]            sb.Append(pc.GetYear(_date).ToString("0000"));[/SIZE][/LEFT]
 [LEFT][SIZE=3]            sb.Append ("/");[/SIZE][/LEFT]
 [LEFT][SIZE=3]            sb.Append (pc.GetMonth(_date ).ToString("00"));[/SIZE][/LEFT]
 [LEFT][SIZE=3]             sb.Append ("/");[/SIZE][/LEFT]
 [LEFT][SIZE=3]            sb.Append(pc.GetDayOfMonth(_date).ToString("00"));[/SIZE][/LEFT]
 [LEFT][SIZE=3]            sb.Append("========>");[/SIZE][/LEFT]
 [LEFT][SIZE=3]            sb.Append(pc.GetDayOfWeek(_date).ToString());[/SIZE][/LEFT]
 [LEFT][SIZE=3]            string s=pc.GetDayOfWeek (_date).ToString ();[/SIZE][/LEFT]
 [LEFT][SIZE=3]            switch(s.ToUpper())[/SIZE][/LEFT]
 [LEFT][SIZE=3]            {[/SIZE][/LEFT]
 [LEFT][SIZE=3]                case "SATURDAY":[/SIZE][/LEFT]
 [LEFT][SIZE=3]                    sb.Append("(شنبه) ");[/SIZE][/LEFT]
 [LEFT][SIZE=3]                    break;[/SIZE][/LEFT]
 [LEFT][SIZE=3]                case "SUNDAY":[/SIZE][/LEFT]
 [LEFT][SIZE=3]                    sb.Append("(يكشنبه");[/SIZE][/LEFT]
 [LEFT][SIZE=3]                    break;[/SIZE][/LEFT]
 [LEFT][SIZE=3]                case "MONDAY":[/SIZE][/LEFT]
 [LEFT][SIZE=3]                    sb.Append("(دوشنبه");[/SIZE][/LEFT]
 [LEFT][SIZE=3]                    break;[/SIZE][/LEFT]
 [LEFT][SIZE=3]                case "FRIDAY":[/SIZE][/LEFT]
 [LEFT][SIZE=3]                    sb.Append("(جمعه)");[/SIZE][/LEFT]
 [LEFT][SIZE=3]                    break;[/SIZE][/LEFT]
 [LEFT][SIZE=3] [/SIZE][/LEFT]
 [LEFT][SIZE=3]            }[/SIZE][/LEFT]
 [LEFT][SIZE=3]            return sb.ToString();[/SIZE][/LEFT]
 [LEFT][SIZE=3]        }[/SIZE]

[/LEFT]
[RIGHT][SIZE=3]
[/SIZE]
[SIZE=3]حالا کد زیرو داخل باتون مینویسیم:[/SIZE]

[/RIGHT]
[LEFT][CODE][SIZE=3]string mytoday = miladi2shamsi(DateTime.Now);[/SIZE] 
[SIZE=3]            MessageBox.Show(mytoday);[/SIZE]
[/LEFT]
[/CODE]
 

tina.programer

عضو جدید
رشته ای را گرفته و به حروف بزرگ تبدیل می کند

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

این تیکه کد هم یه رشته رو میگیره و تبدیل به حروف بزرگش میکنه :heart::heart::heart:

کد:
[SIZE=3]string s1;[/SIZE] [LEFT][SIZE=3]            s1=textBox1.Text;[/SIZE][/LEFT]
 [LEFT][SIZE=3]            s1 = s1.ToUpper();[/SIZE][/LEFT]
 [LEFT][SIZE=3]            textBox2.Text = s1;[/SIZE][/LEFT]
 

mozhgan22

عضو جدید
ایجاد نوشته های گرافیکی

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

برای ایجاد نوشته های گرافیکی با فرمت های مختلف ابتدا فضای نام زیر را اضافه کنید :

کد:
[LEFT][COLOR=blue][FONT=Tahoma]using[/FONT][/COLOR][COLOR=#444444][FONT=Tahoma] System.Drawing.Drawing2D;[/FONT][/COLOR][/LEFT]
سپس از قطعه کد زیر استفاده کنید :


کد:
SolidBrush br1 = new SolidBrush(Color.White);
            StringFormat fmt = new StringFormat();
            fmt.Alignment = StringAlignment.Center;
            fmt.LineAlignment = StringAlignment.Center;
            Font font = new Font("Freestyle Script", 24);
            Rectangle rc = new Rectangle(0, 0, 400, 200);
            LinearGradientBrush br2 = new LinearGradientBrush(rc, Color.Red, Color.DarkRed, 45, true);
            Bitmap bmp = new Bitmap(400, 200);
            Graphics g = Graphics.FromImage(bmp);
            g.FillRectangle(br2, rc);
            g.DrawString("C# Is The Best Programing Language", font, br1, rc, fmt);
            bmp.Save("csharpcode.bmp", System.Drawing.Imaging.ImageFormat.Bmp);
            g.Dispose();


 

nargess irani

عضو جدید
سلام دوستان
می خواستم بپرسم اون برنامه هایی رو که ما از اینترنت دانلودمی کنیم مثل انیمیشن برای فرم ها یا پوسته برای فرم ها رو کجای برنامه ی سی شارپمون باید قرار بدیم ؟؟؟
 

*avast*

اخراجی موقت
برای بستن فرم جاری از ;( )this.close استفاده می شود.
برای تبدیل محتوای text box به عدد ، آن را به یک متغیر نسبت میدهیم. ;(int a = convert.toint32(textbox1.text
 

RIG

متخصص C#.net
سلام دوستان
می خواستم بپرسم اون برنامه هایی رو که ما از اینترنت دانلودمی کنیم مثل انیمیشن برای فرم ها یا پوسته برای فرم ها رو کجای برنامه ی سی شارپمون باید قرار بدیم ؟؟؟
در مورد DLL ها و کامپوننت های مربوط به همین مواردی که خودتون میگید بیشتر بخونید و نحوه اضافه کردنشون به برنامه که اگه کنترل باشه تو جعبه ابزارت میتونی دریافتش کنی و اگه DLL باشه با ADDREFRENSE و....
که تو اینترنت در ایمورد سرچ کنی و تصویری این موارد رو هم میبینی.
حالت های گرافیکی دادن به برنامه با استفاده از خدمات بعضی از شرکت ها باعث زیبا سازی میشه ولی در کل بعدها میتونه براتون مشکل ساز بشه.
 

RIG

متخصص C#.net
فارسی سازی زبان سیستم

فارسی سازی زبان سیستم

فارسی سازی فرم یا کنترلی . تغییر زیان سیستم در لحظه اجرایی برنامه شما . و ....
کد:
 System.Globalization.CultureInfo fa = new CultureInfo("fa-ir");
            InputLanguage.CurrentInputLanguage = InputLanguage.FromCulture(fa);
 

RIG

متخصص C#.net
خروج از برنامه و ریست برنامه

خروج از برنامه و ریست برنامه

کد:
 Application.Exit();// خروج
            Application.Restart();// ریست برنامه
 

RIG

متخصص C#.net
استفاده از لینک لیبل و اونت کلیک آن

استفاده از لینک لیبل و اونت کلیک آن

کد:
private void lnkweblogMe_LinkClicked(object sender, LinkLabelLinkClickedEventArgs e)
        {
            System.Diagnostics.Process.Start("www.seesharp.blogfa.com");
        }
 

RIG

متخصص C#.net
استفاده از متد Run و بکارگیری آن برای اجرای دیگر فرم های برنامه به عنوان اولین فرم.

استفاده از متد Run و بکارگیری آن برای اجرای دیگر فرم های برنامه به عنوان اولین فرم.

کد:
using System;
using System.Collections.Generic;
using System.Linq;
using System.Windows.Forms;

namespace MokatebatEdari
{
    static class Program
    {
        /// <summary>
        /// The main entry point for the application.
        /// </summary>
        [STAThread]
        static void Main()
        {
            Application.EnableVisualStyles();
            Application.SetCompatibleTextRenderingDefault(false);
            Application.Run(new frmLogin());
           // Application.Run(new Form1());
           // Application.Run(new frminformation());
            // and ....
        }
    }
}
 

RIG

متخصص C#.net
Setting برنامه

Setting برنامه

واسه اینکه ازبانک واسه تظیمات سیستم استفاده نکنیم میتونیم از Setting برنامه واسه رفع کارمون بهره بگیریمو من اینجا خاستم هر موقع برنامه اجرا میشه چک کنه . با مقدار دهی bool تو Setting اینکار کردم و با یکسری کد . میتونید بیشتر اطلاعات در موردش تو نت پیدا کنید. من فقط یه جور استارتم برای دوستان . نمونه برنامه هم نذاشتم . کار اسونیه . resurce هم به همین شکل است و میتونید کاربردهاشو پیدا کنید.
کد:
private void toolStripButton10_Click(object sender, EventArgs e)
        {
            if (panelmemory.Visible ==false )
            {
                panelmemory.Visible = true;
                Properties.Settings.Default.panelmemory = true;
               Properties.Settings.Default.Save();
            }
           else if (panelmemory.Visible==true)
            {
                panelmemory.Visible = false;
                Properties.Settings.Default.panelmemory = false;
                Properties.Settings.Default.Save();
            }
        }



کد:
formload() { panelmemory.Visible = Properties.Settings.Default.panelmemory;}







settting.setting.jpg
 
آخرین ویرایش:

mehrta

عضو جدید
چه جور انیمیشنی و پوسته ای؟ یکم دقیق تر توضیح بدید!
اگر انیمیشن شما به صورت فایل .gif هست، خوب میتونید اون رو توی یک کنترل Image نشون بدید. اگه اشتباه نکنم این کنترل انیمیشن ها رو هم نشون میده
 

hamid19023

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

کد:
[LEFT] private void Form1_FormClosing(object sender, FormClosingEventArgs e)
        {
            if (MessageBox.Show("your text","your caption",MessageBoxButtons.OKCancel)==DialogResult.Cancel)
            {
                e.Cancel = true;
            }
        }
[/LEFT]
 

hamid19023

عضو جدید
دیدید فایل رو می‌کشید تو یه نرم‌افزار مثل مدیاپلیر بعد اون فایل باز میشه. می‌خوام روش بدست آوردن لیست فایل‌هایی که تو برنامه کشیده شده رو بگم:
رویداد DragDrop مربوط به یک شی (تو این مثال فرم) رو فعال کنید بعد قطعه کد زیر رو تو برنامه وارد کنید

کد:
[LEFT]private void Form1_DragDrop(object sender, DragEventArgs e)
        {
            object ob = e.Data.GetData("FileDrop");
            string[] files = (string[])ob;

            //do something
        }
[/LEFT]
 
بالا