2012-01-01 15 views
0

私は "プレーヤー"でDataGridViewとDataTableを持っています。DataGridViewとDataTable

 DataTable dt = Extensions.ToDataTable<Player>(PlayerList); 
     Grid.DataSource = dt; 

ユーザーがグリッド内の任意のセルをクリックすると、ダブルクリックイベントでPlayer objetにアクセスしたいと考えています。 どうすればいいですか?

+0

'Grid.DataSource = PlayerListを;'同じことをするだろう。 –

+0

@HenkHolterman:どのようなタイプであるか、またはコピーにバインドするかどうかはわかりません。 – SLaks

+0

@HenkHoltermanいいえ、私のプログラムでは同じことをしません。 – Hooch

答えて

3

は、その行のDataBoundItemアクセスし、DataGridViewののCellContentDoubleClickイベントのハンドラを追加します。

DataGridView1.CellContentDoubleClick += DataGridView1_CellContentDoubleClick; 

private void DataGridView1_CellContentDoubleClick(object sender, System.Windows.Forms.DataGridViewCellEventArgs e) 
{ 
    Player player = DataGridView1.Rows[e.RowIndex].DataBoundItem as Player; 
} 
+0

DataBrowserにDataBoundItemプロパティがありませんか? – Hooch

+0

いいえ、存在しませんが、DataGridViewRowには、行コレクションが返すべきものがあります。しかし、私はちょうどC#への翻訳の問題があることに気付きました: 'DataGridView1.Rows(e.RowIndex)'は 'DataGridView1.Rows [e.RowIndex]'であったはずです。私は答えを修正しました。 –

関連する問題