نمایش نتایج 1 تا 5 از 5

نام تاپیک: اضافه کردن ایتم و کلید ایتم در listbox

  1. #1

    اضافه کردن ایتم و کلید ایتم در listbox

    سلام دوستان.
    از اساتید ممنون میشم اگر راهنمایی بفرمایید.
    من توی لیست باکس میخوام یه سری رشته بریزم که ایدی یا همون کلید هر ایتم هم داخلش باشه.
    در حالات عادی من ندیدم که لیست باکس گزینه ای برای اضاف کردن value به لیست باکس داشته باشه. اگر راه حلی بهم بگین ممنون میشم.

    مثلا اطلاعاتی مثل استانها میخوام تو لیست باکس بریزم که هر استانی ایدی مخصوص بخود داره.
    نام استانها رو که میتونم با add item به لیست باکس اضاف کنم اما اون ایدی هر استان رو کجا باید بریزم تو لیست باکس که موقع واکشی بتونم ایدی هر استان رو بگیرم ازش؟

  2. #2

    نقل قول: اضاف کردن ایتم و کلید ایتم در لیست باکس

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

    البته راه مناسب ترش اینه که یا از کامپیوننت دیگری استفاده کنید یا این که آیدی ها رو همون ایندکس آیتم ها بزارید: یعنی اولین آیتم آیدیش باشه 1، دومین آیتم 2، سومی 3 و ... .

  3. #3

    نقل قول: اضاف کردن ایتم و کلید ایتم در لیست باکس

    نقل قول نوشته شده توسط rezadana مشاهده تاپیک
    سلام دوستان.
    از اساتید ممنون میشم اگر راهنمایی بفرمایید.
    من توی لیست باکس میخوام یه سری رشته بریزم که ایدی یا همون کلید هر ایتم هم داخلش باشه.
    در حالات عادی من ندیدم که لیست باکس گزینه ای برای اضاف کردن value به لیست باکس داشته باشه. اگر راه حلی بهم بگین ممنون میشم.

    مثلا اطلاعاتی مثل استانها میخوام تو لیست باکس بریزم که هر استانی ایدی مخصوص بخود داره.
    نام استانها رو که میتونم با add item به لیست باکس اضاف کنم اما اون ایدی هر استان رو کجا باید بریزم تو لیست باکس که موقع واکشی بتونم ایدی هر استان رو بگیرم ازش؟
    در نظر بگیرید که آیتم های داخل ListBox از نوع object هستند، نه string. یعنی شما هر نوع داده ای که دلتون بخواد میتوانید بهش بدید، حتی یک ساختار داده ای که صد تا فیلد جور واجور داشته باشه رو میشه به عنوان آیتم به ListBox بدید.
    کلا تمامی کنترل های استاندارد که ورودی object میگیرند این قابلیت رو دارند که بهشون یک نوع داده پیچیده و چند بخشی رو بدید و موقع نشون دادن تصمیم بگیرید که چه بخشی از داده رو نشون بدن.
    مثال های خیلی متنوعی میشه زد، اما در مورد کاربرد خاص شما، ترکیب کلید و مقدار <KeyValuePair<TKey,TValue ئه، همونی که Dictionary ثبت می کنه. شما می توانید همون <KeyValuePair<TKey,TValue که هم کلید و هم مقدار رو داره به ListBox بدید و موقع نشون دادن تصمیم بگیرید که فرضا مقدار رو نشون بده، یا کلید رو نشون بده، یا هر فرمت string دلخواه تون رو نشون بده.


    private void Form1_Load(object sender, EventArgs e)
    {
    var dic = new Dictionary<int, string>();
    dic.Add(1, "Gilan");
    dic.Add(2, "Mazandaran");
    dic.Add(3, "Azarbayjan Sharghi");
    dic.Add(4, "Azarbayjan Gharbi");
    dic.Add(5, "Kermanshah");
    listBox1.DataSource = new List<KeyValuePair<int, string>>(dic).ToArray();
    }

    private void listBox1_Format(object sender, ListControlConvertEventArgs e)
    {
    e.Value = ((KeyValuePair<int, string>)e.ListItem).Value;
    }

    private void button1_Click(object sender, EventArgs e)
    {
    var id = ((KeyValuePair<int, string>)listBox1.SelectedItem).Key;
    MessageBox.Show(id.ToString());
    }

  4. #4

    نقل قول: اضاف کردن ایتم و کلید ایتم در لیست باکس

    سپاس از شما ممنون از راهنمایی مفیدتون

  5. #5

    نقل قول: اضاف کردن ایتم و کلید ایتم در لیست باکس

    سپاس بزرگوار

تاپیک های مشابه

  1. انتخاب ایتم از بین ایتم های ListBox
    نوشته شده توسط nurani در بخش C#‎‎
    پاسخ: 4
    آخرین پست: جمعه 06 فروردین 1395, 10:36 صبح
  2. پاسخ: 0
    آخرین پست: شنبه 24 بهمن 1394, 22:35 عصر
  3. افزودن آیتمی خاص بعد از هر 2 آیتم ListBox
    نوشته شده توسط rozitir در بخش C#‎‎
    پاسخ: 1
    آخرین پست: دوشنبه 25 آبان 1394, 21:24 عصر
  4. انتخاب ایتم listbox بر اساس شماره رکود ایتم
    نوشته شده توسط saeedhushmand در بخش C#‎‎
    پاسخ: 1
    آخرین پست: دوشنبه 12 تیر 1391, 19:53 عصر
  5. حرفه ای: تغییر موقعیت متن آیتم های Listbox به مرکز ( ListBox Text Alignment )
    نوشته شده توسط M.T.P در بخش برنامه نویسی در 6 VB
    پاسخ: 1
    آخرین پست: پنج شنبه 06 خرداد 1389, 22:12 عصر

برچسب های این تاپیک

قوانین ایجاد تاپیک در تالار

  • شما نمی توانید تاپیک جدید ایجاد کنید
  • شما نمی توانید به تاپیک ها پاسخ دهید
  • شما نمی توانید ضمیمه ارسال کنید
  • شما نمی توانید پاسخ هایتان را ویرایش کنید
  •