PDA

View Full Version : انتخاب یک فیلد متناظر با کمبوباکس



msoleiman
چهارشنبه 25 دی 1387, 13:07 عصر
با درود و سلام
من میخواهم اطلاعات درون یک کمبوباکس را که انتخاب میشود یک فیلد دیگر متناظر با آن به یک تکست باکس منتقل شود به طور مثال نام را از کمبوباکس بگیرم و کد مربوط به آن نام در یک تکست باکس پس از خروج از کمبو قرار گیرد . البته می دانم سوالم نشان از آماتور بودنم است ولی چه کنم . در #C کاملا مبتدی هستم .

اوبالیت به بو
چهارشنبه 25 دی 1387, 13:27 عصر
تقريباً اينجوري:


string[] Example = new string[2];//Name
private void Form1_Load(object sender, EventArgs e)
{
Example[0] = "Obalit";
Example[1] = "Alireza";
Example[2] = "Behrouz";
for (int i = 0; i < Example .Length ; i++)
{
comboBox1.Items.Add(Example[i].ToString());
}
}

private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
textBox1.Text = comboBox1.SelectedIndex.ToString();
}

msoleiman
چهارشنبه 25 دی 1387, 13:39 عصر
درود و سلام
این طوری که شما فرمودید ایندکس همان فیلد را می اورد من میخواهم از دیتابیس از جدول 1 فیلد 1 که از طریق کمبو انتخاب شد از همان جدول 1 فیلد 2 را در تکست باکس قرار دهد .
بدرود

majid216
شنبه 28 تیر 1393, 10:11 صبح
سلام
دوست عزیز این سوال (انتخاب یک فیلد متناظر با کمبوباکس) دقیقا سوال من هم هست هر چه جستجو کردم جوابی پیدا نکردم اگر به جواب رسیده ای من هم راهنمایی کن. ممنون

ali_md110
شنبه 28 تیر 1393, 10:33 صبح
سلام
اگر از wpf و سی شارپ استفاده میکنید یک راه حل آسون DataTemplate ها هست
ولی اگر از winform استفاده میکنید باید از روال رویداد یا ComboBox.SelectionChangeCommitted Eventکامبوباکس استفاده کنید
چون کامبو باکس میتونه در حالت عادی 2 تا فیلد رو از دیتابیس بخونه یعنی :
comboBox1.ValueMember = "id";
comboBox1.DisplayMember = "name";
;
idرو میزیزه در خاصیت ValueMember که میتونید درون Event بالا که گفتیم بدین صورت به کد id دسترسی داشته باشید


private void comboBox1_SelectionChangeCommitted(object sender, EventArgs e)
{
string ID = comboBox1.SelectedValue.ToString();
textbox2.text = comboBox1.Text.ToString
}






یا میتونید بدین صورت مقادیر کامبو باکس رو انتخاب و بریزید درون متغیر یا کنترلهای دیگر
string item1 = comboBox1.Text;
string item2 = comboBox1.GetItemText(comboBox1.SelectedItem);