C#中datagridview选中行后textbox显示选中的内容

我想让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();
            };
  }

 

posted @ 2014-04-16 15:29  雨花梦  阅读(10273)  评论(0编辑  收藏  举报