[英]combobox item selected To be fixed
我在我的窗體中有一個數據綁定組合框我通過函數deptload()IN FORM LOAD填充它
public void DeptcomboLoad()
{
DataTable dt = depttrans.getDeptName();
Cmb_Department.DataSource = dt;
Cmb_Department.DisplayMember = "DepartmentName"; //CHAR
Cmb_Department.ValueMember = "DepartmentPK"; //INT
}
現在,當一個部門的員工(比如賬戶DepartmentName =“Accounts”,DepartmentPK = 23)登錄時,我希望將ComboBox文本選為“acounts”,當我去獲取ComboBox的選定值時,我應該得到23
我試過了
Cmb_Department.selectedtext="Accounts"
Cmb_Department.Text="Accounts"
但它沒有給出選定的價值
任何人都可以提出建議
而不是嘗試將值放入組合框中,嘗試獲取SelectedItem
如下所示:
string txt= Cmb_Department.SelectedItem.Text
要不就:
string txt= Cmb_Department.SelectedText
您可以通過發出以下內容來選擇正確的項目:
Cmb_Department.SelectedValue = 23;
其中23來自其他一些變量,也許來自另一個對象,可能來自一個局部變量,無論你的情況如何。
現在,要獲取所選值,您可以使用以下語句:
var val = Cmb_Department.SelectedValue;
要獲取所選文本(與文本關聯的文本):
var text = ((DataRow)Cmb_Department.SelectedItem)["DepartmentName"];
我之前規定上述原因是因為SelectedText
屬性是volatile,並且Text
屬性並不總是根據DropDownStyle
的設置方式工作。
但是,有些人可能會爭論得到與前面提到的相同,你可以發表這樣的聲明:
var text = Cmb_Department.Text;
要更改組合框的選定值,可以使用SelectedItem
屬性或SelectedIndex
。 索引必須是數據源中的確切數字,而Item必須是數據源中的精確對象
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.