1

加载用户控件时如何在文本框上设置焦点?

在winforms中,我写了textbox1.focus()usercontrol.load()但它没有用。

4

1 回答 1

11

请尝试 .Select() 方法。

textBox1.Select();

或者

private void Form1_Load(object sender, EventArgs e)
{
    this.ActiveControl = textBox1;
}

或者,您可以尝试:

private TextBox TextFocusedFirstLoop()
{
    // Look through all the controls on this form.
    foreach (Control con in this.Controls)
    {
    // Every control has a Focused property.
    if (con.Focused == true)
    {
        // Try to cast the control to a TextBox.
        TextBox textBox = con as TextBox;
        if (textBox != null)
        {
        return textBox; // We have a TextBox that has focus.
        }
    }
    }
    return null; // No suitable TextBox was found.
}

private void SolutionExampleLoop()
{
    TextBox textBox = TextFocusedFirstLoop();
    if (textBox != null)
    {
    // We have the focused TextBox.
    // ... We can modify or check parts of it.
    }
}
于 2012-11-17T07:26:41.983 回答