需要从datagridview
到combobox
的值获取帮助,我有一个datagridview
从SQL获取数据,该数统计从SQL检索到的5列和行数, 4个文本框和2个组合框。
我已经为textbox
和combobox
编写了如下代码。
int i;
i = dataGridView1.SelectedCells[0].RowIndex;
textBox4.Text = dataGridView1.Rows[i].Cells[0].Value.ToString();
textBox3.Text= dataGridView1.Rows[i].Cells[1].Value.ToString();
comboBox1.SelectedValue = dataGridView1.Rows[i].Cells[2].Value.ToString();
textBox5.Text = dataGridView1.Rows[i].Cells[3].Value.ToString();
textBox1.Text = dataGridView1.Rows[i].Cells[4].Value.ToString();
comboBox2.SelectedIndex = Convert.ToInt32(dataGridView1.Rows[i].Cells[4].Value.ToString());
我可以完美地获取文本框值,但希望datagridview
所选行的列值进入组合框。
答案 0 :(得分:0)
不要使用SelectedIndex,请使用SelectedValue。
尝试一下:
comboBox1.DisplayMember = "MyFieldText";
comboBox1.ValueMember = "MyFieldId";
var myObject = (MyObject)dataGridView1.SelectedRows[0].DataBoundItem;
comboBox1.SelectedValue = myObject.Id;
答案 1 :(得分:0)
如果要将这些字符串添加到comboBox,则不应使用SelectedIndex属性。
如果我正确理解了您的意图,这就是我认为您正在寻找的东西:
comboBox2.Items.Add(dataGridView1.Rows[i].Cells[4].Value.ToString());