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

DataGridの1行選択について。

環境/言語:[VB.NET]
分類:[.NET]

いつもお世話になっています。

DataGridについての質問です。

DataGridでは、複数行選択ができますが、
これを1行しか選択できないようにしようと思っています。

また、タブキー等で他のコントロールにフォーカスが移っても、
最後に選択されていた行が選択されているようにしたいと思っています。

現在、CurrentCellChanged と CursorChanged
のイベント時に、Unselect()と、Select()を実現しているような感じなのですが、
列の数が増えると処理が重くなったり、なかなか思った動きにならない感じです。

どなたか良い方法を知っている方がいらっしゃいましたら、
教えて下さい。よろしくお願します。

> のイベント時に、Unselect()と、Select()を実現しているような感じなのですが、

日本語おかしいですね・・・

のイベント時に、Unselect()と、Select()を使って、
実現しているような感じなのですが・・・

です。

すいません。
何度もすいません。。

DataGrid上で十字キー(↑,↓,←,→)のキー押下イベントを取得する方法がわかれば、
この問題が解決できそうなのですが・・・

どなたかご存知の方いらっしゃいませんでしょうか?
> DataGrid上で十字キー(↑,↓,←,→)のキー押下イベントを取得する方法がわかれば、
> この問題が解決できそうなのですが・・・
>
> どなたかご存知の方いらっしゃいませんでしょうか?

途中経過をいまいち理解していませんが、上の件なら
DataGridでProcessCmdKeyをオーバーライドすれば可能なはずです。
Sugi@ぱぱんぶぃびぃさん

> 途中経過をいまいち理解していませんが、上の件なら
> DataGridでProcessCmdKeyをオーバーライドすれば可能なはずです。

レスありがとうございます。
ProcessCmdKeyを使って、
やりたい事は実現できました!
ありがとうございます。

でも、結局ListViewコントロールを使うことになりました。。
DataGridは、色々な機能を盛り込もうとすると大変だという事がわかり、
勉強になりました。
解決済み!

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