[英]Value of Selected dataGridView cell in Textbox
我在Windows窗體中有一個datagridview和文本框,當我單擊datagridview的單元格時,該值必須復制到文本框。
我收到一個錯誤:
System.Windows.Forms.DataGridCell不包含RowIndex的定義
我已經嘗試過此代碼
void dataGridView1_Click(object sender, EventArgs e)
{
Txt_GangApproved.Text=dataGridView1.CurrentCell.RowIndex.Cells["NO_OF_GANGS_RQRD"].Value.ToString();
}
foreach (DataGridViewRow RW in dataGridView1.SelectedRows) {
//Send the first cell value into textbox'
Txt_GangApproved.Text = RW.Cells(0).Value.ToString;
}
嘗試這個-
Txt_GangApproved.Text = dataGridView1.SelectedRows[0].Cells["NO_OF_GANGS_RQRD"].Value.ToString();
您正在使用錯誤的事件來實現所需的結果。 代替使用Click事件,而使用dataGridView1的CellClick事件,然后嘗試以下代碼:
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
if(e.RowIndex >= 0 && e.ColumnIndex >= 0) //to disable the row and column headers
{
Txt_GangApproved.Text = dataGridView1.Rows[e.RowIndex].Cells[e.ColumnIndex].Value.ToString();
}
}
有時在DataGridView的選擇模式為FullRowSelect時,有時會使用SelectionChanged事件。 然后,我們可以在事件內寫一行:
Txt_GangApproved.Text = Convert.ToString(dataGridView1.CurrentRow.Cells["NO_OF_GANGS_RQRD"].Value);
private void dataGRidView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
if (e.RowIndex >= 0)
{
DataGridViewRow row = this.dataGridView1.Rows[e.RowIndex];
string text = row.Cells[dataGridView1.CurrentCell.ColumnIndex].Value.ToString();
}
}
這是100%的工作代碼(使用-CellClick-事件處理程序):
private void dataGridView1_CellClick(object sender, DataGridViewCellEventArgs e)
{
textBox1.Text = dataGridView1.CurrentCell.Value.ToString();
}
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.