我在WinForm里加了一个DataGridView控件绑定了SQL数据库里的一个表。
我想单击DataGridView里的某一行的时候就把这一行的数据显示在同窗口的几个textBox控件里,请问怎么实现? 也请问在哪个事件里写这个代码?还有需要改控件的什么属性值吗?
这个功能的实现让我最困惑的是如何让这个DataGridView知道你所点的是具体是哪一行。 刚入门,很多地方不熟悉,还请大家说得详细点,万分感谢。
我想单击DataGridView里的某一行的时候就把这一行的数据显示在同窗口的几个textBox控件里,请问怎么实现? 也请问在哪个事件里写这个代码?还有需要改控件的什么属性值吗?
这个功能的实现让我最困惑的是如何让这个DataGridView知道你所点的是具体是哪一行。 刚入门,很多地方不熟悉,还请大家说得详细点,万分感谢。
private string GetID()
{
string fhID = "";
if (dgvList.Focused == true && dgvList.CurrentRow != null)
{
int RowIndex = dgvList.CurrentCell.RowIndex;
if (RowIndex < 0)
{
fhID = "";
}
else
{
fhID = dgvList.Rows[RowIndex].Cells[0].Value.ToString();
}
}
return fhID;
} 用这个方法就可以~
{
this.dataGridView1[e.ColumnIndex, e.RowIndex].Value.ToString();//第一种取法
this.dataGridView1.Rows[e.RowIndex].Cells["你所要取值的列名称"].Value.ToString();//第二种取法
this.dataGridView1.CurrentRow.Cells["你所要取值的列名称"].Value.ToString();//第三种取法
} private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
this.dataGridView1[e.ColumnIndex, e.RowIndex].Value.ToString();//第一种取法
this.dataGridView1.Rows[e.RowIndex].Cells["你所要取值的列名称"].Value.ToString();//第二种取法
this.dataGridView1.CurrentRow.Cells["你所要取值的列名称"].Value.ToString();//第三种取法
} private void dataGridView1_CellDoubleClick(object sender, DataGridViewCellEventArgs e)
{
this.dataGridView1[e.ColumnIndex, e.RowIndex].Value.ToString();//第一种取法
this.dataGridView1.Rows[e.RowIndex].Cells["你所要取值的列名称"].Value.ToString();//第二种取法
this.dataGridView1.CurrentRow.Cells["你所要取值的列名称"].Value.ToString();//第三种取法
}
{
this.dataGridView1[e.ColumnIndex, e.RowIndex].Value.ToString();//第一种取法
this.dataGridView1.Rows[e.RowIndex].Cells["你所要取值的列名称"].Value.ToString();//第二种取法
this.dataGridView1.CurrentRow.Cells["你所要取值的列名称"].Value.ToString();//第三种取法
}
{
Textbox1.Text = Convert.ToString(dataGridView1[0, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox2.Text = Convert.ToString(dataGridView1[1, dataGridView1.CurrentCell.RowIndex].Value).Trim();
comboBox1.SelectedItem = Convert.ToString(dataGridView1[2, dataGridView1.CurrentCell.RowIndex].Value).Trim();
comboBox2.SelectedItem = Convert.ToString(dataGridView1[3, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox3.Text = Convert.ToString(dataGridView1[4, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox4.Text = Convert.ToString(dataGridView1[5, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox5.Text = Convert.ToString(dataGridView1[6, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox6.Text = Convert.ToString(dataGridView1[7, dataGridView1.CurrentCell.RowIndex].Value).Trim();
}
{
Textbox1.Text = Convert.ToString(dataGridView1[0, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox2.Text = Convert.ToString(dataGridView1[1, dataGridView1.CurrentCell.RowIndex].Value).Trim();
comboBox1.SelectedItem = Convert.ToString(dataGridView1[2, dataGridView1.CurrentCell.RowIndex].Value).Trim();
comboBox2.SelectedItem = Convert.ToString(dataGridView1[3, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox3.Text = Convert.ToString(dataGridView1[4, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox4.Text = Convert.ToString(dataGridView1[5, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox5.Text = Convert.ToString(dataGridView1[6, dataGridView1.CurrentCell.RowIndex].Value).Trim();
Textbox6.Text = Convert.ToString(dataGridView1[7, dataGridView1.CurrentCell.RowIndex].Value).Trim();
}