0

ユーザーがDataGridView行を選択し、選択された行に基づいて動作するボタンを押します。

現在、次の方法を使用して、選択した行の ID (最初の列)を取得しようとしています。

int id = (int) DataGrid_Contact.SelectedRow[0].Cells[0].Value;

dgv.CurrentRow、などの他の方法を試しましdgv.SelectedCellsた。すべてが常に最初の行または最初のセル(0, 0)を指しています。私の選択に関係なく、これを変更することはできません。

の注目すべきプロパティは次のDataGridViewとおりです。

MultiSelect = false;
ReadOnly = true;
SelectMode = FullRowSelect;

それ以外はすべて、Selection とは無関係であるか、デフォルト値に設定されています。

問題が発生した場合に備えて、DataGridView に SQL コマンドを入力し、DataGridView. 私はthis.BindingContext[DataGridView dgv.DataSource].EndCurrentEdit()無駄にしようとしました。

最後に、Microsoft Visual C# 2008 Express Edition と Microsoft SQL Server 2008 を使用しています。

4

3 に答える 3

0

選択した行のインデックスを取得し、元の構造を使用して適切な要素を取得できるはずです。

     objList[yourGrid.SelectedIndex]
于 2013-11-11T18:47:33.407 に答える