DOBON.NET DOBON.NETプログラミング掲示板過去ログ

DataGridViewの初期選択

環境/言語:[環境(XP)/使用言語(VS2005(VB))]
分類:[.NET]

チハヤです。
今回は Windowアプリにて質問があります。


DataGridViewにデータを格納後、
左上隅に最初のセルが選択されていると思うのですが、
このセル選択をなしにするにはどうすればいいでしょうか?

初期に既に選択があるため、このセルを選択した時にCurrentCellChangedイベントが動作しないため困っている次第なのです。
処理としましては、一覧表示したデータから1件を選択し、
選択したデータの詳細情報を新たなフォームに表示させたいのです。

それとも、もっと相応しいイベントがありますでしょうか?
すみませんが、よろしくお願いします。
■No21590に返信(チハヤさんの記事)
> DataGridViewにデータを格納後、
> 左上隅に最初のセルが選択されていると思うのですが、
> このセル選択をなしにするにはどうすればいいでしょうか?
>

DataGridView.CurrentCell プロパティをNothingに設定することにより、
一時的にフォーカス四角形を削除できます。
http://msdn2.microsoft.com/ja-jp/library/system.windows.forms.datagridview.currentcell(VS.80).aspx
  • 題名: Re[1]: DataGridViewの初期選択
  • 著者: みゃ
  • 日時: 2008/03/07 9:08:16
  • ID: 21593
  • この記事の返信元:
  • この記事への返信:
    • (なし)
  • ツリーを表示
■No21590に返信(チハヤさんの記事)
> チハヤです。
> 今回は Windowアプリにて質問があります。
>
>
> DataGridViewにデータを格納後、
> 左上隅に最初のセルが選択されていると思うのですが、
> このセル選択をなしにするにはどうすればいいでしょうか?
>
> 初期に既に選択があるため、このセルを選択した時にCurrentCellChangedイベントが動作しないため困っている次第なのです。
> 処理としましては、一覧表示したデータから1件を選択し、
> 選択したデータの詳細情報を新たなフォームに表示させたいのです。
>
> それとも、もっと相応しいイベントがありますでしょうか?
> すみませんが、よろしくお願いします。
>

DataGridViewにデータを格納したときに、DataGridView.ClearSelection()
メソッドを実行すれば、選択が解除されるかと思います。

http://msdn2.microsoft.com/ja-jp/library/bxdf3ekh(VS.80).aspx
やじゅさん、みゃさん、お返事ありがとうございます。


みゃさんの教えていただいた

> DataGridViewにデータを格納したときに、DataGridView.ClearSelection()
> メソッドを実行すれば、選択が解除されるかと思います。

は、選択状態は解除できるのですが
見た目にはわからなくてもDataGridViewにはフォーカスを持っているらしく
左上端のセルをクリックしてもDataGridViewイベントが動作しませんでした。



そこで、やじゅさんに教えていただいた

> DataGridView.CurrentCell プロパティをNothingに設定することにより、
> 一時的にフォーカス四角形を削除できます。

を組み合わせてみました。


DataSourceプロパティにDataTableを設定した後
ClearSelection()
CurrentCell = Nothing
を記述しました。

左上端をクリックしても、
DataGridViewイベントが動作するようになりました。


無事解決することができました。
ありがとうございます。
解決済み!

DOBON.NET | プログラミング道 | プログラミング掲示板