ComboBox 控件的使用_绑定、增加选项、清除等

绑定ArrayList(命名空间System.Collections)

view plaincopy to clipboardprint?

  1. ArrayList al1 = new ArrayList();  
  2. al1.Add(new DictionaryEntry("Y", "军品"));  
  3. al1.Add(new DictionaryEntry("N", "民品"));  
  4. cbIsArmy.DataSource = al1;  
  5. cbIsArmy.DisplayMember = "Value";  
  6. cbIsArmy.ValueMember = "Key"; 

ArrayList al1 = new ArrayList(); al1.Add(new DictionaryEntry("Y", "军品")); al1.Add(new DictionaryEntry("N", "民品")); cbIsArmy.DataSource = al1; cbIsArmy.DisplayMember = "Value"; cbIsArmy.ValueMember = "Key";

绑定了DateSource的ComboBox是不能用Items.Add方法最近使用了ComboBox控件,简单总结一下有关它的使用(绑定、增加选项、清除):

一、ComboBox的绑定

view plaincopy to clipboardprint?

  1. OleDB oledb = new OleDB();   
  2. private void Form1_Load(object sender, EventArgs e)   
  3. {   
  4.   DataTable dt = oledb.Filldatatable("Select ID,Name From Table1");//函数返回SQL相关的DataTable 
  5.   comboBox1.DataSource = dt;   
  6.   comboBox1.DisplayMember = "Name";//显示内容 
  7.   comboBox1.ValueMember = "ID";//选项对应的value 
  8. }  

OleDB oledb = new OleDB(); private void Form1_Load(object sender, EventArgs e) {   DataTable dt = oledb.Filldatatable("Select ID,Name From Table1");//函数返回SQL相关的DataTable   comboBox1.DataSource = dt;   comboBox1.DisplayMember = "Name";//显示内容   comboBox1.ValueMember = "ID";//选项对应的value }

二、为ComboBox增加选项

绑定了DateSource的ComboBox是不能用Items.Add方法增加选项的,只能通过修改DataTable来实现,比如想在上面实现的ComboBox1中增加选项“---全部---”,可以这样实现:

view plaincopy to clipboardprint?

  1. private void Form1_Load(object sender, EventArgs e)   
  2. {   
  3.   DataTable dt = oledb.Filldatatable("Select ID,Name From Table1");//函数返回SQL相关的DataTable 
  4.   DataRow dr = dt.NewRow();   
  5.   dr["ID"] = 0;   
  6.   dr["Name"] = "---全部---";   
  7.   dt.Rows.InsertAt(dr, 0);//使用dt.Rows.Add(dr)只是把选项追加到最后,而使用dt.Rows.InsertAt(dr, 0)可以把增加的选项插入到相应的位置上 
  8.   comboBox1.DataSource = dt;   
  9.   comboBox1.DisplayMember = "Name";//显示内容 
  10.   comboBox1.ValueMember = "ID";//选项对应的value 

private void Form1_Load(object sender, EventArgs e) {   DataTable dt = oledb.Filldatatable("Select ID,Name From Table1");//函数返回SQL相关的DataTable   DataRow dr = dt.NewRow();   dr["ID"] = 0;   dr["Name"] = "---全部---";   dt.Rows.InsertAt(dr, 0);//使用dt.Rows.Add(dr)只是把选项追加到最后,而使用dt.Rows.InsertAt(dr, 0)可以把增加的选项插入到相应的位置上   comboBox1.DataSource = dt;   comboBox1.DisplayMember = "Name";//显示内容   comboBox1.ValueMember = "ID";//选项对应的value }

三、清除ComboBox中的选项

如果ComboBox中的选项是手写出来的,则通过comboBox1.Items.Clear();方法来实现,而绑定过DataSource的 ComboBox是不能使用这个方法的,其实这样的情况下清除选项也很简单,用comboBox1.DataSource=null;就可以解决了。

posted on 2010-09-28 16:50  风雨者2  阅读(6320)  评论(1编辑  收藏  举报

导航