C#dataGridView 如何使某一行处于选中状态

form1页面上一个datagridView控件,控件里显示所有从数据库查询出来的数据
form1页面上有一个button (查询某一个数据是否存在),点击button弹出
form2页面,输入条件进行查询,比如我查询姓名=张三的记录是否存在
如果查询到‘张三’这条记录,就让form1的datagridView 里的这条记录处于选中状态

第1个回答  推荐于2018-03-29
form1中弹出form2用模态对话框,也就是button1的单击事件里,就是这样写
form2 f=new form2();
f.ShowDialog();
string r=f.Getname;//getname是form2返回的一个值
for (int i = 0; i < datagridView1.Rows.Count; i++)
{
//找到相同的所在位置
if (datagridView1.Rows[i].Cells[0].Value.ToString().Trim() == r)//我这里是
{
datagridView1.CurrentCell = dataGrid.Rows[i].Cells[0];//设置datagridView1的活动单元格,要是你设置的他的选择方式为行的话就定位到哪一行了
break;
}
}

form2中就要写一个构造函数

public string getname;
public string Getname
{
get{return getname;//这个值就是获取的文本框的值}
}本回答被提问者和网友采纳
第2个回答  2010-04-12
Butten1代码:
private void button1_Click(object sender, EventArgs e)
{
Form2 f= new Form2();
f.ShowDialog();
string r = f.show();

for (int i = 0; i < dataGridView1.Rows.Count;i ++ )
{
if (dataGridView1.Rows[i].Cells[1].Value.ToString().Trim() == r.ToString())
{
dataGridView1.Rows[i].Selected = true;
break;
}
}
}

form2代码:
public string show()
{
return this.textBox1.Text;

}

private void button1_Click(object sender, EventArgs e)
{
this.Close();
}

试试吧,有些细节需要调整下,大体已近实现
相似回答