我想让datagridview中某一行被选中时,textbox中显示选中的值,datagridview的选中模式是整行:
this.dataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;
然后
private void dataGridView1_SelectionChanged(object sender, EventArgs e)
{
int index = dataGridView1.CurrentRow.Index; //获取选中行的行号
textBox1.Text = dataGridView1.Rows[index].Cells[0].Value.ToString();
}
运行时选择datagridview里面的行没有问题,但是当我不小心点击到datagridview的列头时,就提示如下错误:
索引超出范围。必须为非负值并小于集合大小。
参数名: index
这个怎么办?正常情况下点击列头就应该是没有反应的
C#中datagridview选中行后textbox显示选中的内容 private void dataGridView1_SelectionChanged(object sender, EventArgs e) { if (this.dataGridView1.SelectionMode != DataGridViewSelectionMode.FullColumnSelect) { int index = dataGridView1.CurrentRow.Index; //获取选中行的行号 textBox1.Text = dataGridView1.Rows[index].Cells[0].Value.ToString(); }; }