c# – 如何完全禁用DataGridView上的Tab键但是能否选择行?

如何完全禁用DataGridView上的Tab键,以便它根本不会通过单元格?

我在我的应用程序中使用DataGridView作为音乐播放列表,我不需要在单元格周围的那个恼人的窗口默认选择框架.我希望能够正常选择行.我设法使用SetStyle(ControlStyles.Selectable,false)隐藏按钮上的选择边框,但这不会禁用DataGridView上的Tab键.

解决方法:

处理DataGridView的KeyDown事件并调用父(或祖父)控件的SelectNextControl方法.

private void dataGridView1_KeyDown( object sender, KeyEventArgs e )
{
    if ( e.KeyCode == Keys.Tab )
    {
        SelectNextControl( dataGridView1, true, true, true, true );
        // or Parent.SelectNextControl() if the grid is an only child, etc.
        e.Handled = true;
    }
}

这将导致整个网格的行为类似于文本框和按钮之间的标签 – 您可以选择标签到网格中,然后再按Tab键将标签输出到下一个控件上.这通过光标键保留网格内的导航.有关选项卡方向的选项,请参阅链接的MSDN文档,这些是所有这些可怕的布尔参数配置的选项.控制“下一个”选项卡搜索的第一个参数集开始于此,因此您可以将其设置为父级或兄弟级或祖父级.

上一篇:STM32添加以太网连接


下一篇:c# – printDialog页面范围不适用于DataGridView