无法通过组合和文本框进行制表
Can't tab through combo and textboxes
我目前正在使用 API 开发一个名为 Rhinoceros 的程序。该程序不允许在表单中使用 Tab 键,所以我试图在其中编程。它工作得很好,但是,当我尝试从组合框切换到文本框时,反之亦然,光标不会移动。我已经尝试了 select() 和 focus() 函数,它们似乎都不起作用,我目前正在尝试 SelectNextControl,但我似乎也无法让它起作用。如果您有任何想法,请告诉我,一切都会有所帮助。
private void cbNPProjectFolder_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyData == Keys.Tab)
{
txtbxNPProjectNum.SelectNextControl(sender as Control, true, false, true, true);
e.Handled = true;
e.SuppressKeyPress = true;
}
}
我终于弄明白了,如果其他人有这个问题:
我选择了我想要切换的所有容器,转到右下角的事件,在我将其命名为 Generic_KeyDown 的 KeyDown 框中。
private void Generic_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode == Keys.Tab)
{
e.Handled = true;
this.SelectNextControl((Control)sender, true, true, true, true);
e.SuppressKeyPress = true;
}
}
我目前正在使用 API 开发一个名为 Rhinoceros 的程序。该程序不允许在表单中使用 Tab 键,所以我试图在其中编程。它工作得很好,但是,当我尝试从组合框切换到文本框时,反之亦然,光标不会移动。我已经尝试了 select() 和 focus() 函数,它们似乎都不起作用,我目前正在尝试 SelectNextControl,但我似乎也无法让它起作用。如果您有任何想法,请告诉我,一切都会有所帮助。
private void cbNPProjectFolder_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyData == Keys.Tab)
{
txtbxNPProjectNum.SelectNextControl(sender as Control, true, false, true, true);
e.Handled = true;
e.SuppressKeyPress = true;
}
}
我终于弄明白了,如果其他人有这个问题:
我选择了我想要切换的所有容器,转到右下角的事件,在我将其命名为 Generic_KeyDown 的 KeyDown 框中。
private void Generic_KeyDown(object sender, KeyEventArgs e)
{
if(e.KeyCode == Keys.Tab)
{
e.Handled = true;
this.SelectNextControl((Control)sender, true, true, true, true);
e.SuppressKeyPress = true;
}
}