C#Winform开发经验之Combox键值对

方法一:

 /// <summary>
        /// 检查类别初始化
        /// </summary>
        private void loadComboBox()
        {

   //同样可以定义  KeyValuePair<string, string>
            List<KeyValuePair<string, int>> listItem = new List<KeyValuePair<string, int>>();


            //key:前者  value:后者
            //listItem.Add(new KeyValuePair<string, int>("key", value));


            listItem.Add(new KeyValuePair<string, int>("2012年", 2012));


            comboBoxExamType.DataSource = listItem;


            comboBoxExamType.DisplayMember = "Key";


            comboBoxExamType.ValueMember = "Value";


            comboBoxExamType.SelectedIndex = 0;
        }


        private void comboBoxExamType_SelectedIndexChanged(object sender, EventArgs e)
        {
            KeyValuePair<string, int> keyValue = (KeyValuePair<string, int>)comboBoxExamType.SelectedItem;


            MessageBox.Show("key:" + keyValue.Key + ",value:" + keyValue.Value);
        }


方法二:

  /// <summary>
    
/// ComboBox的项
    
/// </summary>
    class ListItem : System.Object
    {
        
private string _Value = string.Empty;
        
private string _Text = string.Empty;

        
/// <summary>
        
/// 
        
/// </summary>
        public string Value
        {
            
get { return this._Value; }

           set { this._Value=value; }
        }
        
/// <summary>
        
/// 显示的文本
        
/// </summary>
        public string Text
        {
            
get { return this._Text; }

           set { this._Text=value; }
        }

        
public ListItem(string value, string text)
        {
            
this._Value = value;
            
this._Text = text;
        }
        
public override string ToString()
        {
            
return this._Text;
        }

    }

 

 通过这个类就可以定义ComboBox的值了, 首先我们定义一个ListItem的清单作为ComboBox的数据源:

            List<ListItem> items = new List<ListItem>();
            items.Add(new ListItem("0""Item_0_Text"));
            items.Add(new ListItem("1""Item_1_Text"));
            items.Add(new ListItem("2""Item_2_Text"));
            items.Add(new ListItem("3""Item_3_Text"));
            items.Add(new ListItem("4""Item_4_Text"));
            items.Add(new ListItem("5""Item_5_Text"));

 

 然后进行相应的设置:

            //将数据源的属性与ComboBox的属性对应
            drpTest.DisplayMember = "Text";        //显示
            drpTest.ValueMember = "Value";        //

 

然后进就可以进行绑定了:

            drpTest.DataSource = items;        //绑定数据

 

绑定数据之后, 就可以对其进行默认选择项的设置, 取值等操作:

            drpTest.SelectedValue = "4";        //设定选择项

            //取得当前选择的项
            ListItem selectedItem = (ListItem)drpTest.SelectedItem;
            string value = selectedItem.Value;    //
            string text = selectedItem.Text;    //显示的文字

 

 


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值