如何在单击新按钮时聚焦 TableLayoutPanel 中的第一个控件



我已经将新的保存关闭按钮从基本表单继承到所有表单。我在基本窗体中编写代码,以便在单击新按钮时清除所有控件。

foreach (Control ctrl in cc)
{
    if (ctrl.GetType() == typeof(TextBox))
        ctrl.Text = "";
    else if (ctrl.GetType() == typeof(ComboBox))
    {
        ComboBox cb = ctrl as ComboBox;
        cb.SelectedIndex = -1;
        cb.Text = "";
    }
}

此代码将清除所有文本框和组合框。现在我想在单击新按钮后聚焦第一个文本框。代码必须以基形式编写,以便在所有继承的窗体中首先关注控件。

您可以使用

LINQ FirstOrDefault 从基窗体上的控件集合中获取第一个TextBox。稍后可以调用其 Focus 方法。

TextBox firstTextBox = this.Controls.OfType<TextBox>().FirstOrDefault();
if(firstTextBox != null)
    firstTextBox.Focus();

相关内容

  • 没有找到相关文章

最新更新