关于ComboBox绑定DataSet的问题。
comboBox.DisplayMember = "aa"; //列名1
comboBox.ValueMember = "bb"; //列名2
comboBox.DataSource = dataSet.Tables[0].DefaultView;
为什么下拉列表里总显示“System.Data.DataRowView”?
[解决办法]
comboBox.DataSource = dataSet.Tables[0];
comboBox.DisplayMember = "aa"; //列名1
comboBox.ValueMember = "bb"; //列名2
不要写DefaultView
[解决办法]
正是! 不要把后面的defaultview加上去
这样就一定不会再出现那样的问题了
[解决办法]
不行的话,用
for(int i=0;i<dataset.Tables[0].Rows.Count;i++)
{
combobox.items.add(dataset.Tables[0].Rows[i][0]);
}
[解决办法]
好的 可以搞定
DataSet ds = new DataSet();
private void Form1_Load(object sender, EventArgs e)
{
//----------初始dataGridView
string str = "Provider=Microsoft.Jet.OLEDB.4.0;data source=Northwind.mdb";
OleDbConnection con = new OleDbConnection(str);
OleDbCommand cmd = con.CreateCommand();
cmd.CommandText = "select * from Customers";
OleDbDataAdapter adp = new OleDbDataAdapter();
adp.SelectCommand = cmd;
adp.Fill(ds, "Customers");
this.dataGridView1.DataSource = ds.Tables[0].DefaultView;
//this.dataGridView1.DataBind();
//-------初始combobox
this.comboBox1.DataSource = this.ds.Tables["Customers"].DefaultView;
this.comboBox1.DisplayMember = "CustomerID";
}
这样写可以 我试过了
[解决办法]
好的 可以搞定
DataSet ds = new DataSet();
private void Form1_Load(object sender, EventArgs e)
{
//----------初始dataGridView
string str = "Provider=Microsoft.Jet.OLEDB.4.0;data source=Northwind.mdb";
OleDbConnection con = new OleDbConnection(str);
OleDbCommand cmd = con.CreateCommand();
cmd.CommandText = "select * from Customers";
OleDbDataAdapter adp = new OleDbDataAdapter();
adp.SelectCommand = cmd;
adp.Fill(ds, "Customers");
this.dataGridView1.DataSource = ds.Tables[0].DefaultView;
//this.dataGridView1.DataBind();
//-------初始combobox
this.comboBox1.DataSource = this.ds.Tables["Customers"].DefaultView;
this.comboBox1.DisplayMember = "CustomerID";
}
这样写可以 我试过了
[解决办法]
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(this.comboBox1.Text);
}
[解决办法]
加不加DefaultView没什么影响。
应该是你的数据集dataset数据填充有问题。。
你把这一段代码发出来看看。。
[解决办法]
不加DefaultView就行
如果还有问题
查下数据源取到了没有
[解决办法]
不是那里的问题 这个我见过 当时搞定了
是这里的问题
private void button1_Click(object sender, EventArgs e)
{
MessageBox.Show(this.comboBox1.Text);
}
this.comboBox1.Text的问题
不要用 index 找这个 TEXT就可以