.NET TIPS DataGridViewコントロールでセル選択を行単位のみで行うようにするには?[2.0のみ、C#、VB]デジタルアドバンテージ 遠藤 孝信2006/09/22 |
![]() |
|
DataGridViewコントロールは、デフォルトではセルをクリックすると個々のセルが選択される。しかしクリックしたセルを含む行全体が選択される方が横並びのデータを認識しやすい場合が多い。
![]() |
行単位でのみの選択を可能したDataGridViewコントロール |
セルをクリックすると、そのセルを含んだ行全体が選択される。このモードでは個々のセルだけを選択することはできないが、セル内容の編集は個々のセルで行える。 |
DataGridViewコントロールでは、セルがクリックされたときに選択される部分を、選択モードであるSelectionModeプロパティにより設定できる。行単位での選択のみにするには、これにDataGridViewSelectionMode.FullRowSelectを設定すればよい。
| ||
SelectionModeプロパティの設定(上:C#、下:VB) | ||
変数dgvはDataGridViewコントロールのインスタンスを参照しているものとする。 |
DataGridViewSelectionMode列挙体(System.Windows.Forms名前空間)のほかの値を設定すれば、列単位での選択なども可能である*。
* 列単位での選択を使用する場合には、各列のSortModeプロパティがAutomatic(これがデフォルト値)以外でなければならない。 |
選択モードのデフォルト値は、行ヘッダ部分をクリックすれば行が選択され、セルがクリックされれば個別のセルが選択される「RowHeaderSelect」だ。
以下にSelectionModeプロパティを行単位のみに設定しているサンプル・プログラムを示す。上記のDataGridViewコントロールの画面はこれを実行したときのものだ。
| |
DataGridViewコントロールの選択モードを行単位にしたC#のサンプル・プログラム(dgvrowselect.cs) | |
| |
DataGridViewコントロールの選択モードを行単位にしたVBのサンプル・プログラム(dgvrowselect.vb) | |
ここではコードを簡便にするために、.NETで利用可能な画像のデコーダ一覧をデータソースとして使用している。画像のデコーダについては「TIPS:画像を読み込むには?」を参照してほしい。
なお本稿ではコードによりSelectionModeプロパティの設定を記述しているが、Visual Studio 2005ではプロパティ・ウィンドウからも設定できる。
利用可能バージョン:.NET Framework 2.0のみ カテゴリ:Windowsフォーム 処理対象:DataGridViewコントロール 使用ライブラリ:DataGridViewコントロール 使用ライブラリ:DataGridViewSelectionMode列挙体(System.Windows.Forms名前空間) |
![]() |
「.NET TIPS」 |
Insider.NET フォーラム 新着記事
- 第2回 簡潔なコーディングのために (2017/7/26)
ラムダ式で記述できるメンバの増加、throw式、out変数、タプルなど、C# 7には以前よりもコードを簡潔に記述できるような機能が導入されている - 第1回 Visual Studio Codeデバッグの基礎知識 (2017/7/21)
Node.jsプログラムをデバッグしながら、Visual Studio Codeに統合されているデバッグ機能の基本の「キ」をマスターしよう - 第1回 明瞭なコーディングのために (2017/7/19)
C# 7で追加された新機能の中から、「数値リテラル構文の改善」と「ローカル関数」を紹介する。これらは分かりやすいコードを記述するのに使える - Presentation Translator (2017/7/18)
Presentation TranslatorはPowerPoint用のアドイン。プレゼンテーション時の字幕の付加や、多言語での質疑応答、スライドの翻訳を行える
![]() |
|
|
|
![]() |
- - PR -
Insider.NET 記事ランキング
本日
月間
転職/派遣情報を探す
ソリューションFLASH