我想知道如何检查gridview的行是否被选中。 我正在开发Windows应用程序。
我想设置if条件,即如果某个特定行被选中,那么用对应的单元格值填充文本框。
我只是不知道如何在if子句中给出条件。
答案 0 :(得分:3)
处理DataGridView.SelectionChanged事件。使用DataGridView.SelectedRows属性获取选定的行集合。
private void dataGridView_SelectionChanged(object sender, EventArgs e)
{
// Update the text of TextBox controls.
textBox1.Text = dataGridView.SelectedRows[0].Cells[1].Value.ToString();
textBox2.Text = dataGridView.SelectedRows[0].Cells[2].Value.ToString();
....
}
答案 1 :(得分:0)
if (dataGridView.Rows[rowIndex].Selected)
{
// Do something ..
}
答案 2 :(得分:0)
检查DataGridViewRow
的所选属性,它会为所选的其他true
返回false
。
bool isSelected = dataGridView1.Rows[e.RowIndex].Selected;
答案 3 :(得分:0)
如果启用了多选,您可以订阅控件的SelectionChanged事件并迭代每个选定的行,如果仅选择单行选择,则只迭代第一个。
private void MyGridView_SelectionChanged(object sender, EventArgs e)
{
for (int i = 0; i < MyGridView.SelectedRows.Count; i++)
{
MyTextBox.Text = MyGridView.SelectedRows[i].Cells[0].Value.ToString(); //assuming column 0 is the cell you're looking for
// do your other stuff
}
}
可以在SelectedRows属性中找到更多信息。