- 題名: DataGridViewセル選択時の枠線
- 日時: 2012/12/28 11:55:26
- ID: 31200
- この記事の返信元:
- (なし)
- この記事への返信:
- [31201] Re[1]: DataGridViewセル選択時の枠線2012/12/28 12:55:02
- ツリーを表示
■No31200に返信(よしおさんの記事)
コントロール パネル
\コンピューターの簡単操作
\コンピューターの簡単操作センター
\キーボードを使いやすくします
にて、『ショートカットキーとアクセスキーに下線を表示します』を
on にしてみてください。破線が表示されるようになるはずです。
ただしこの設定を施すと、他のアプリの「メニュー」に対しても、
アクセスキーの下に常に下線が表示されるようになるのでご注意ください。
(たとえば、「ファイル(F)」の F の下に下線が引かれるなど)
上記設定が off の場合は、DataGridView やボタンなどのフォーカス枠は
付きませんし、ショートカットキー/アクセスキーの下線も表示されません。
ただし、Ctrl + O で「ファイルを開く」のダイアログを表示させたり、
Alt キーでメニューを開いたりした場合には、上記設定が off でも
フォーカス枠や下線が表示されます。
ちなみにこの設定は、Windows 2000 や XP にも存在します。初期値は逆ですけれどね。
http://www.gizcollabo.jp/vbtomo/boards/vbchoshoqa.php?do=spread&num=8206
もし、設定によらずフォーカス枠が表示されるようにしたいなら、
セルの内容を自前で描画するという選択肢もあります。
private void dataGridView1_CellPainting(object sender, DataGridViewCellPaintingEventArgs e)
{
Point p = ((DataGridView)sender).CurrentCellAddress;
bool hasFocus = p == new Point(e.ColumnIndex, e.RowIndex);
if (hasFocus)
{
e.Paint(e.CellBounds, e.PaintParts & ~DataGridViewPaintParts.Focus);
ControlPaint.DrawFocusRectangle(e.Graphics, e.CellBounds);
e.Handled = true;
}
}
分類:[.NET]
毎度参考にさせて頂いています。
DataGridViewのセル選択を行った際に、枠線が破線で表示されて
選択状態が分かるように表示されるのですが、
同じアプリをWindows7で動かすと、破線が表示されなくなりました。
Windows7でも選択状態が分かるようにしたいのですが、何か設定が
いるのでしょうか。