DOBON.NET プログラミング道: .NET Framework, VB.NET, C#, Visual Basic, Visual Studio, インストーラ, ...

DOBON.NET

DataGridViewで複数行選択できないようにして、セルを選択すると行全体が選択されるようにする

注意:DataGridViewコントロールは、.NET Framework 2.0で新しく追加されました。

複数行選択できないようにする

DataGridView.MultiSelectプロパティをFalseにすることにより、セル、行、列を複数選択することができなくなります。

[VB.NET]
'DataGridView1でセル、行、列が複数選択されないようにする
DataGridView1.MultiSelect = False
[C#]
//DataGridView1でセル、行、列が複数選択されないようにする
DataGridView1.MultiSelect = false;

セルを選択すると行全体が選択されるようにする

DataGridView.SelectionModeプロパティをFullRowSelectにすることにより、セルを選択すると行全体が選択されるようになります。

[VB.NET]
'セルを選択すると行全体が選択されるようにする
DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect
[C#]
//セルを選択すると行全体が選択されるようにする
DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;

結論

以上2つを組み合わせて、複数行選択できなく、セルを選択すると行全体が選択されるようにするには、次のようにします。

[VB.NET]
DataGridView1.MultiSelect = False
DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect
[C#]
DataGridView1.MultiSelect = false;
DataGridView1.SelectionMode = DataGridViewSelectionMode.FullRowSelect;

SelectionModeプロパティについて

SelectionModeプロパティに指定できるDataGridViewSelectionMode列挙値を以下にまとめておきます(一部MSDN「DataGridViewSelectionMode 列挙体」からの抜粋)。

DataGridViewSelectionMode列挙体のメンバ名 説明
CellSelect セルをクリックすることによってセルが選択されます。行や列は選択できません。
ColumnHeaderSelect 列のヘッダーをクリックすることによって列が選択されます。また、セルをクリックすることによってセルが選択されます。DataGridViewColumnSortMode.Automaticが設定されているときは使用できません。
FullColumnSelect 列のヘッダーまたはセルをクリックすることによって列全体が選択されます。DataGridViewColumnSortMode.Automaticが設定されているときは使用できません。
FullRowSelect 行のヘッダーまたはセルをクリックすることによって行全体が選択されます。
RowHeaderSelect 行のヘッダーをクリックすることによって行が選択されます。また、セルをクリックすることによってセルが選択されます。既定値です。