我在TabPage上有一個DataGridView。當用戶點擊一行時,會出現第二個DGV。每行都與其自己的裝有數據的DGV相關聯。我想要的是,當用戶從一行到另一行時,DataGridView也會改變。到目前爲止,我已經嘗試了SelectionChanged事件,但我不希望DGV在用戶單擊同一行中的單獨單元格的情況下重新加載。任何幫助將不勝感激。基於行選擇的Datagridview SelectionChanged事件
void dgv1_CellClick(object sender, DataGridViewCellEventArgs e)
{
int rowIndex = dgv1.Rows[e.RowIndex].Index;
if (dgv1 == null)
return;
if (dgv1.Rows[e.RowIndex].Cells[rowIndex].Selected == true);
{
dgv2.Size = new Size(dgv2.Width + 800, dgv2.Height);
dgv2.Location = new Point(0, 500);
tp.Controls.Add(dgv2);
Console.WriteLine("Row clicked");
}
}
-Tatiana
您可以創建一個代表當前選定行的屬性,然後檢查新選擇的行是否相同? – dursk
實際上,當前選定的行是dgv.CurrentRow的屬性,問題是如何檢查新選擇的行。其次,CurrentRow的類型DataGridViewRow不能轉換爲int類型,因此當試圖將它與任何int進行比較時會出現錯誤。 –
DataGridViewRow有一個Index屬性,所以它會是dgv.CurrentRow.Index。 MSDN:http://msdn.microsoft.com/en-us/library/system.windows.forms.datagridviewrow_properties%28v=vs.110%29.aspx – dursk