例如:
comboBox1绑定了数据源datatable
datatable中有三个字段,分别为id, name,number;
设置如下:
id作为comboBox1的valuemember;
name作为comboBox1的displaymember;
当我选中一条记录后,怎么获取number呢?
实现方法:
在comboBox1_SelectedIndexChanged事件里面,运用到了DataTable的Select()方法。
废话不多说了。
步骤如下:
1、建立一个全局的DataTable,方便在comboBox1_SelectedIndexChanged事件里调用
DataTable
dt =new
dt.Columns.Add("id", typeof(int));
dt.Columns.Add("name", typeof(string));
dt.Columns.Add("number", typeof(int));
for (int id = 1; id <= 10; id++)
{
dt.Rows.Add(new object[] { id, string.Format("customer{0}", id), id });
}
this.comboBox1.DataSource = dt.DefaultView;
this.comboBox1.ValueMember = "id";
this.comboBox1.DisplayMember = "name";
<pre name="code" class="csharp"> private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
string name = this.comboBox1.Text;
DataRow[] dr = dt.Select("name='" + name + "'");//根据name在DataTable中查询选择的记录存入DataRow数组中
foreach (DataRow d in dr)
{
this.textBox1.Text = d["number"].ToString();
}
}</pre>
comboBox1绑定了数据源datatable
datatable中有三个字段,分别为id, name,number;
设置如下:
id作为comboBox1的valuemember;
name作为comboBox1的displaymember;
当我选中一条记录后,怎么获取number呢?
实现方法:
在comboBox1_SelectedIndexChanged事件里面,运用到了DataTable的Select()方法。
废话不多说了。
步骤如下:
1、建立一个全局的DataTable,方便在comboBox1_SelectedIndexChanged事件里调用
DataTable
dt =new
DataTable();//定义成全局
dt.Columns.Add("id", typeof(int));
dt.Columns.Add("name", typeof(string));
dt.Columns.Add("number", typeof(int));
for (int id = 1; id <= 10; id++)
{
dt.Rows.Add(new object[] { id, string.Format("customer{0}", id), id });
}
this.comboBox1.DataSource = dt.DefaultView;
this.comboBox1.ValueMember = "id";
this.comboBox1.DisplayMember = "name";
<pre name="code" class="csharp"> private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
string name = this.comboBox1.Text;
DataRow[] dr = dt.Select("name='" + name + "'");//根据name在DataTable中查询选择的记录存入DataRow数组中
foreach (DataRow d in dr)
{
this.textBox1.Text = d["number"].ToString();
}
}</pre>