دسته بندی ها
17:22 1398/08/11

دریافت Text انتخاب شده در کمبوباکس در سی شارپ

مشخصات سوال کننده :
کاربر : pedram_khan     امتیاز کاربر : 277     رتبه کاربر : 6
دسته بندی : سی شارپ

به این سوال امتیاز بدهید    1
تعداد بازدید این سوال : 8243
هوش مصنوعی

پاسخ هوش مصنوعی

برای دریافت مقدار انتخاب شده از ComboBox در سی شارپ، به جای استفاده از SelectedText باید از SelectedItem یا SelectedValue استفاده کنید. این متدها به شما اجازه می دهند تا مقدار واقعی انتخاب شده در ComboBox را دریافت کنید.

در زیر یک مثال ساده آورده شده است که نشان می دهد چگونه می توانید مقدار انتخاب شده را دریافت کنید:


// برای دریافت مقدار انتخاب شده
string name = combobox1.SelectedItem.ToString(); // یا
string name = combobox1.SelectedValue.ToString(); // اگر ComboBox مقدار خاصی داشته باشد

با استفاده از SelectedItem، شما به مقدار واقعی انتخاب شده دسترسی پیدا می کنید و این مشکل را که کاربر متن جدیدی تایپ کرده حل می کند. اطمینان حاصل کنید که ComboBox شما به درستی با داده ها پر شده است و SelectedItem به درستی مقدار انتخاب شده را برمی گرداند.

به این پاسخ امتیاز بدهید    0
امتیاز: - رتبه: -
پاسخ دهنده : hamdola 17:27 1398/08/11

برای دریافت مقدار Text انتخاب شده در کنترل کمبوباکس در سی شارپ دستور زیر صحیح هست

 

string name =  combobox1.Text;

برای اینکه کاربر نتونه متن کمبوباکس رو تغییر بده میتونید خاصیت DropDownStyle رو برابر با DropDownList قرار بدید.

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

 

string name =  combobox1.GetItemText(combobox1.SelectedItem);

 

دستور بالا بنظرم بهترین قطعه کد برای این منظور هست.

همچنین برای دریافت Id ردیف انتخاب شده در ComboBox هم میتونید از دستور زیر استفاده کنید

 

int id =  Convert.Toint32(combobox1.selectedValue);
ویرایش شده در شنبه 11 آبان 1398 ساعت 17:37:34
به این پاسخ امتیاز بدهید    2
امتیاز: 121 رتبه: 12
پاسخ دهنده : Sowgandi 17:56 1398/08/11

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

((DataSource)combobox1.SelectedItem).Value;

در کد بالا به جای DataSource ویو یا تیبلی که به کومبوباکس وصل کردید رو قرار دهید و به جای Value  فیلد مورد نظرتون در ویو یا تیبل که همون تکست( نام مامور) میشه رو قرار بدید.

خوبی این کد اینه که شما هر فیلدی در دیتاسورس کمبوباکس، با توجه به مقدار انتخاب شده کمبوباکس میتونید بدست بیارید.

به این پاسخ امتیاز بدهید    1
امتیاز: 876 رتبه: 3
برای ارسال پاسخ لطفا وارد حساب کاربری خود شوید.   ورود