DataGridViewコントロールで起動時にセルが選択されないようにするには?[2.0のみ、C#、VB].NET TIPS

» 2006年10月13日 05時00分 公開
[遠藤孝信デジタルアドバンテージ]

この記事は会員限定です。会員登録(無料)すると全てご覧いただけます。

「.NET TIPS」のインデックス

連載目次

 DataGridViewコントロールでは、アプリケーションの実行開始時にデフォルトで左上隅(1行1列目)のセルが自動的に選択され、反転状態となる。

アプリケーション実行開始時のDataGridViewコントロール
デフォルトでは左上隅のセルが選択状態となっている。

 現在選択されている(正確には「フォーカスのある」)セルの設定/取得は、DataGridViewコントロールのCurrentCellプロパティにより行えるが、このプロパティにnull(VBではNothing)を代入することにより、いずれのセルも選択されていない状態にできる。

// 選択されているセルをなくす
dgv.CurrentCell = null;

' 選択されているセルをなくす
dgv.CurrentCell = Nothing

CurrentCellプロパティの設定(上:C#、下:VB)
変数dgvはDataGridViewコントロールのインスタンスを参照しているものとする。

 ただしこの設定(CurrentCellプロパティへのnull/Nothingの代入)は、フォームのLoadイベント・ハンドラで行っても効果がない(これはDataGridViewコントロールがまだ表示されていないためだと思われる。明示的に記述しない限り、Loadイベントのタイミングではフォームは表示されない)。

 いずれのセルも選択されていない状態でアプリケーションの実行を開始するには、Loadイベントではなく、フォームが表示された後に一度だけ発生するShownイベントのイベント・ハンドラで上記の設定を行えばよい(Shownイベントについては「TIPS:Windowsフォームの表示直後に初期化処理を行うには?」を参照)。以下にそのサンプル・プログラムを示す。

Copyright© Digital Advantage Corp. All Rights Reserved.

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。