0

DataGridViewの配列を動的に作成し、グリッドビューごとにDataGridViewCellEventHandlerを追加しました。クリックすると、現在のDataGridViewセル値を変更します。セル値を変更するには、配列から現​​在のDataGridViewインデックスをdataGridView[i].Rowsとして知る必要があります。 [colIndex] .Cells [rowIndex] .Value、
クリックされた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";
} 
4

1 に答える 1

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";
} 
于 2012-11-25T16:15:25.493 に答える