کنترل ListBox در سی شارپ

تیم تحریریه 1404/02/07 0 17
لینک کوتاه https://zoheirsoftware.com/z/e5f32ee82 |
کنترل ListBox در سی شارپ,حذف آیتم‌ها از ListBox,رویدادهای مهم در ListBox

کنترل ListBox در سی‌شارپ

کنترل ListBox در سی‌شارپ یکی از ابزارهای پرکاربرد برای نمایش لیستی از داده‌هاست که کاربر می‌تواند یک یا چند آیتم را از بین آن‌ها انتخاب کند.

این کنترل به برنامه‌نویسان این امکان را می‌دهد تا مجموعه‌ای از گزینه‌ها را در یک لیست ساده و قابل فهم به کاربران ارائه دهند.

اضافه کردن آیتم‌ها به ListBox بسیار آسان است و می‌توان به صورت دستی یا از طریق کدنویسی آن‌ها را مدیریت کرد.

از جمله ویژگی‌های مهم ListBox می‌توان به امکان انتخاب تکی یا چندگانه، مرتب‌سازی آیتم‌ها و مدیریت رویدادهایی مثل تغییر انتخاب اشاره کرد.

در سی‌شارپ، کنترل ListBox نه تنها برای نمایش داده‌های ساده استفاده می‌شود، بلکه در برنامه‌های پیشرفته‌تر نیز برای نمایش داده‌های پویا که از پایگاه داده یا منابع دیگر بارگذاری می‌شوند کاربرد دارد.

امکان تغییر ظاهر، افزودن رویدادهای دلخواه هنگام انتخاب یا دابل کلیک روی آیتم‌ها، و کار با مجموعه‌ای از داده‌ها باعث شده است که ListBox به یک ابزار بسیار انعطاف‌پذیر و کارآمد در طراحی فرم‌های کاربری تبدیل شود.

به همین دلیل تسلط بر نحوه استفاده از ListBox برای هر توسعه‌دهنده‌ی سی‌شارپ ضروری است.

 

کنترل ListBox در سی‌شارپ

ایجاد ListBox در فرم

روش 1: طراحی با استفاده از ویژوال استودیو (Designer)

  • پروژه‌ی Windows Forms ایجاد کن.
  • از جعبه ابزار (Toolbox) کنترل ListBox را به فرم بکش.
  • در بخش Properties می‌توان ویژگی‌های آن مثل Name, Items, SelectionMode را تنظیم کرد.

روش 2: کدنویسی

می‌توان به صورت دستی با کد ListBox ایجاد کرد:

ListBox listBox1 = new ListBox();
listBox1.Location = new Point(20, 20);
listBox1.Size = new Size(200, 150);
this.Controls.Add(listBox1);


افزودن آیتم‌ها به ListBox

  •  افزودن ساده

listBox1.Items.Add("سیب");
listBox1.Items.Add("پرتقال");

 

  • افزودن مجموعه‌ای از آیتم‌ها

string[] fruits = { "موز", "هندوانه", "کیوی" };
listBox1.Items.AddRange(fruits);

 

  •  افزودن اشیاء

listBox1.Items.Add(new Product("کتاب", 50));



اگر آیتم شیء باشد، باید متد ()ToString در آن کلاس override شود.

حذف آیتم‌ها از ListBox

  • حذف با مقدار

listBox1.Items.Remove("سیب");

 

  • حذف با اندیس

listBox1.Items.RemoveAt(0);

 

  • حذف تمام آیتم‌ها

listBox1.Items.Clear();

 

 

حذف آیتم‌ها از ListBox

انتخاب آیتم‌ها

  • انتخاب یک آیتم

string selectedItem = listBox1.SelectedItem.ToString();

 

  • اندیس آیتم انتخاب شده

int selectedIndex = listBox1.SelectedIndex;

 

  • انتخاب چند آیتم (در حالت MultiSelect)

foreach (var item in listBox1.SelectedItems)
{
    MessageBox.Show(item.ToString());
}

 

  • تنظیم نوع انتخاب

  • گزینه‌ها

    • SelectionMode.One – فقط یک انتخاب مجاز

    • SelectionMode.MultiSimple – چند انتخاب با کلیک ساده

    • SelectionMode.MultiExtended – چند انتخاب با Ctrl و Shift

 

 

آیا به دنبال یک فرصت عالی برای یادگیری برنامه‌نویسی هستید؟ 🚀

با دوره آموزشی سی‌شارپ ما، شما می‌توانید مهارت‌های خود را به سطح جدیدی ارتقا دهید! این دوره به‌طور کامل طراحی شده تا به شما کمک کند تا از مبتدی تا پیشرفته در دنیای برنامه‌نویسی سی‌شارپ پیش بروید.

👨‍🏫 چرا دوره ما را انتخاب کنید؟

  • محتوای جامع و عملی: با پروژه‌های واقعی و تمرینات عملی، یادگیری را به تجربه‌ای جذاب تبدیل کنید.
  • مدرس مجرب: از تجربه و دانش مدرس حرفه‌ای بهره‌مند شوید که شما را در هر مرحله از یادگیری راهنمایی می‌کنند.
  • پشتیبانی ۲۴/۷: هر زمان که سوالی داشتید، ما در کنار شما خواهیم بود تا به شما کمک کنیم.
  • دسترسی مادام‌العمر: به محتوای دوره دسترسی دائمی داشته باشید و هر زمان که خواستید، می‌توانید به آن مراجعه کنید.

💡 فرصت را از دست ندهید!

بایادگیری سی‌شارپ، می‌توانید در دنیای فناوری اطلاعات به یک متخصص تبدیل شوید و در پروژه‌های جذاب و چالش‌برانگیز شرکت کنید.

همین امروز به جمع یادگیرندگان ما بپیوندید و اولین قدم را به سوی آینده‌ای روشن‌تر بردارید!

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

 

 

رویدادهای مهم در ListBox

  • SelectedIndexChanged

    این رویداد زمانی رخ می‌دهد که آیتم انتخاب‌شده تغییر کند.
private void listBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    MessageBox.Show("شما انتخاب کردید: " + listBox1.SelectedItem);
}

 

  • DoubleClick

    اگر کاربر دوبار روی آیتم کلیک کند:
private void listBox1_DoubleClick(object sender, EventArgs e)
{
    MessageBox.Show("دابل کلیک روی: " + listBox1.SelectedItem);
}



ویژگی‌های مهم ListBox

  • Items

    لیست آیتم‌ها
  • SelectedItem

      آیتم انتخاب‌شده
  • SelectedIndex

    اندیس انتخاب‌شده
  • SelectedItems

      لیست آیتم‌های انتخاب‌شده (در حالت چندتایی)
  • SelectionMode

       نوع انتخاب
  • Sorted

    مرتب‌سازی خودکار آیتم‌ها
  • Enabled

    فعال یا غیرفعال بودن کنترل
  • Visible

    قابل دیدن بودن یا نبودن

 

ویژگی‌های مهم ListBox

 

مثال کاربردی لیست دانش‌آموزان

private void Form1_Load(object sender, EventArgs e)
{
    listBox1.Items.Add("علی");
    listBox1.Items.Add("زهرا");
    listBox1.Items.Add("امیر");
}

private void btnAdd_Click(object sender, EventArgs e)
{
    listBox1.Items.Add(txtName.Text);
    txtName.Clear();
}

private void btnDelete_Click(object sender, EventArgs e)
{
    listBox1.Items.Remove(listBox1.SelectedItem);
}


در این مثال، با وارد کردن نام دانش‌آموز و فشردن دکمه "افزودن"، نام به لیست اضافه می‌شود.

همچنین با انتخاب یک نام و فشردن دکمه "حذف"، آن نام از لیست پاک می‌شود.

نکات پیشرفته

  • استفاده از DataBinding

    برای اتصال ListBox به دیتابیس یا لیست شیء
listBox1.DataSource = productsList;
listBox1.DisplayMember = "ProductName";
listBox1.ValueMember = "ProductID";

 

  • استفاده از ToolTip

ToolTip toolTip = new ToolTip();
toolTip.SetToolTip(listBox1, "برای انتخاب آیتم کلیک کنید");

 

  • تغییر رنگ یا فونت

listBox1.Font = new Font("Tahoma", 12);
listBox1.BackColor = Color.LightYellow;

 


محدودیت‌ها و راهکارها

  • عدم پشتیبانی از ستون‌بندی

    ListBox تنها یک ستون دارد. برای لیست‌های پیچیده‌تر از ListView یا DataGridView استفاده شود.
  • ظاهر ساده

    می‌توان با شخصی‌سازی ظاهر آن را زیباتر کرد ولی محدود است.
  • عدم پشتیبانی مستقیم از دسته‌بندی آیتم‌ها

    باید با کدنویسی آن را شبیه‌سازی کرد.


نتیجه‌گیری

کنترل ListBox یکی از ساده‌ترین و در عین حال مفیدترین کنترل‌های رابط کاربری در C# است. استفاده از آن در بسیاری از برنامه‌ها به کاربر امکان انتخاب از میان گزینه‌های مختلف را می‌دهد. با استفاده از ویژگی‌ها، متدها و رویدادهای آن می‌توان برنامه‌های تعاملی و کاربرپسند ساخت.

یادگیری کامل ListBox به توسعه‌دهندگان کمک می‌کند تا به راحتی رابط‌های گرافیکی مناسب و انعطاف‌پذیر طراحی کنند.

 

دوره های مرتبط
آموزش برنامه نویسی سی شارپ,آموزش پروژه محور سی شارپ,آموزش مقدماتی تا پیشرفته سی شارپ,طراحی نرم افزار تحت ویندوز

آموزش برنامه نویسی سی شارپ

زبان شی گرایی حرفه ای سی شارپ یک زبان قدرتمند برای طراحی نرم افزار به شمار میرود.

999,000 تومان

2.6k بازدید

ارسال دیدگاه

برای ارسال نظر لطفا ورود یا ثبت نام کنید.