2012-11-25 101 views
0

我創建了一個DataGridViews dinamically數組,並添加了每個gridview DataGridViewCellEventHandler, 我想單擊更改當前DataGridView單元格值,以更改單元格值您必須知道當前DataGridView索引從數組作爲dataGridView [i ] .Rows [colIndex] .Cells [rowIndex] .Value,
如何找出哪個DataGridView被點擊?如何找出哪個DataGridView被點擊?

這是我的代碼。

DataGridView[] altGridViews=new DataGridView[10]; 
for (int i = 0; i < 10; i++) 
{ 
altGridViews[i]=new DataGridView(); 
altGridViews[i].RowCount = 3; 
altGridViews[i].ColumnCount = 3; 
altGridViews[i].AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.Fill; 
altGridViews[i].CellClick += new   
DataGridViewCellEventHandler(altGridView_Click); 
this.Controls.Add(altGridViews[i]); 
} 

和DataGridView的,甚至處理

protected void altGridView_Click(object sender, DataGridViewCellEventArgs e) 
{ 
    int colIndex = e.ColumnIndex; 
    int rowIndex = e.RowIndex; 
//todo: change current cell value 
//altGridViews[i].Rows[colIndex].Cells[rowIndex].Value="something"; 
} 

回答

2
protected void altGridView_Click(object sender, DataGridViewCellEventArgs e) 
{ 
    int colIndex = e.ColumnIndex; 
    int rowIndex = e.RowIndex; 
    var currentDataGridView = sender as DataGridView; //your grid 
    currentDataGridView.Rows[colIndex].Cells[rowIndex].Value="something"; 
} 
+0

這正是我需要的!非常感謝你! –

+0

這幫了我。對我來說,我不得不把最後一行的索引切換到: currentDataGridView.Rows [rowIndex] .Cells [colIndex] .Value =「something」; – peitek