DevExpress的下拉框控件ComboxBoxEdit怎样绑定键值对选项
場景
DevExpress的下拉框控件ComboBoxEdit控件的使用:
https://blog.csdn.net/BADAO_LIUMANG_QIZHI/article/details/102855898
在設(shè)置ComboBoxEdit的下拉框內(nèi)容時除了最簡單的
comboBox.Properties.Items.Add("下拉選項1");
如果要添加鍵值對形式的數(shù)據(jù)該怎樣實現(xiàn)。
注:
博客主頁:
https://blog.csdn.net/badao_liumang_qizhi
關(guān)注公眾號
霸道的程序猿
獲取編程相關(guān)電子書、教程推送與免費下載。
實現(xiàn)
即在Add選項時添加的不是普通的字符串,而是一個對象實體類,里面有鍵值對兩個屬性,在添加選項時是添加一個個的對象。
為了在顯示時顯示對象的value,需呀重寫對象的toString方法,使其返回value。
新建實體類對象,必須要重寫其toString方法。?
public class ControlModelItem{public ControlModelItem(string key,string value){this.key = key;this.value = value;}private string key;public string Key{get { return key; }set { key = value; }}private string value;public string Value{get { return this.value; }set { this.value = value; }}public override string ToString(){return Value;}}然后聲明下拉框
DevExpress.XtraEditors.ComboBoxEdit comboBox = new DevExpress.XtraEditors.ComboBoxEdit();添加下拉框選項
?int i=0;ComboBoxItemCollection coll = comboBox.Properties.Items; foreach(ControlModelItem controlModelItem in controlModelItems){coll.Add(controlModelItem);if (controlModelItem.Value == currentCellValue)comboBox.SelectedIndex = i;i++;}獲取選中項的key和value
if (comboBox.SelectedItem != null){string key = (comboBox.SelectedItem as ControlModelItem).Key;string value = (comboBox.SelectedItem as ControlModelItem).Value;}注意:
這里是要將當(dāng)前Cell的內(nèi)容賦值給下框默認選中,如果通過SelectText強行賦值的話,則會導(dǎo)致當(dāng)前選中
的key缺失,在獲取key時就會報錯。
可以通過上面這種判斷value相等時將當(dāng)前index設(shè)置為選中項SelectedIndex。
獲取通過SelectedItem和下標的方式指定選中項。
此時就可以在下拉框的選項改變事件中獲取當(dāng)前選中項的key和value
comboBox.SelectedValueChanged += comboBox_SelectedValueChanged; private void comboBox_SelectedValueChanged(object sender, EventArgs e){DevExpress.XtraEditors.ComboBoxEdit comboBox = sender as ComboBoxEdit;ControlModelItem controlModelItem = comboBox.SelectedItem as ControlModelItem;string controlModelItemkey = controlModelItem.Key;switch (controlModelItemkey){//恒壓case "ConstantVoltage":break;default:break;}}?
總結(jié)
以上是生活随笔為你收集整理的DevExpress的下拉框控件ComboxBoxEdit怎样绑定键值对选项的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: DataGridView中实现点击单元格
- 下一篇: DevExpress的TreeList实