C# 如何设置它,以便在调用提示符时选中文本框?

C# 如何设置它,以便在调用提示符时选中文本框?,c#,winforms,tabindex,C#,Winforms,Tabindex,这就是我的提示符在调用时的样子 我只是点击了一个按钮来调用这个方法。现在,正如您所注意到的,文本框未被选中。如何使其在调用此方法时,在默认情况下使文本框处于选中状态,而不必单击它或对其进行制表 (我知道这很小,但每一个细节看起来都会更好)你是说重点突出?像这样: public int dialog() { Form prompt = new Form(); // creates form //dimensions prompt.Width = 300; pro

这就是我的提示符在调用时的样子

我只是点击了一个按钮来调用这个方法。现在,正如您所注意到的,文本框未被选中。如何使其在调用此方法时,在默认情况下使文本框处于选中状态,而不必单击它或对其进行制表


(我知道这很小,但每一个细节看起来都会更好)

你是说
重点突出
?像这样:

public int dialog()
{
    Form prompt = new Form(); // creates form

    //dimensions
    prompt.Width = 300;
    prompt.Height = 125;

    prompt.Text = "Adding Rows"; // title

    Label amountLabel = new Label() { Left = 75, Top = 0, Text = "Enter a number" }; // label for prompt
    amountLabel.Font = new Font("Microsoft Sans Serif", 9.75F);
    TextBox value = new TextBox() { Left = 50, Top = 25, Width = prompt.Width / 2 }; // text box for prompt
    Button confirmation = new Button() { Text = "Ok", Left = prompt.Width / 2 - 50, Width = 50, Top = 50 }; // ok button
    confirmation.Click += (sender, e) => { prompt.Close(); }; // if clicked it will close

    prompt.AcceptButton = confirmation; // enter

    // adding the controls
    prompt.Controls.Add(confirmation);
    prompt.Controls.Add(amountLabel);
    prompt.Controls.Add(value);
    prompt.ShowDialog();

    int num;
    Int32.TryParse(value.Text, out num);
    return num;
}
在显示对话框后编写此代码,它应该可以工作

textBox1.Focus();

你的意思是集中注意力?像这样:

public int dialog()
{
    Form prompt = new Form(); // creates form

    //dimensions
    prompt.Width = 300;
    prompt.Height = 125;

    prompt.Text = "Adding Rows"; // title

    Label amountLabel = new Label() { Left = 75, Top = 0, Text = "Enter a number" }; // label for prompt
    amountLabel.Font = new Font("Microsoft Sans Serif", 9.75F);
    TextBox value = new TextBox() { Left = 50, Top = 25, Width = prompt.Width / 2 }; // text box for prompt
    Button confirmation = new Button() { Text = "Ok", Left = prompt.Width / 2 - 50, Width = 50, Top = 50 }; // ok button
    confirmation.Click += (sender, e) => { prompt.Close(); }; // if clicked it will close

    prompt.AcceptButton = confirmation; // enter

    // adding the controls
    prompt.Controls.Add(confirmation);
    prompt.Controls.Add(amountLabel);
    prompt.Controls.Add(value);
    prompt.ShowDialog();

    int num;
    Int32.TryParse(value.Text, out num);
    return num;
}
在显示对话框后编写此代码,它应该可以工作

textBox1.Focus();

用于在控件之间进行制表的顺序由属性确定。此属性由添加控件的顺序自动确定(如果不手动更改),TabIndex=0的控件将在窗体打开时聚焦(当然,如果控件可以聚焦)

试一试

promt.ActiveControl = value;
prompt.ShowDialog();

用于在控件之间进行制表的顺序由属性确定。此属性由添加控件的顺序自动确定(如果不手动更改),TabIndex=0的控件将在窗体打开时聚焦(当然,如果控件可以聚焦)

试一试

promt.ActiveControl = value;
prompt.ShowDialog();

Lookup TabIndex propertyUse
value.Focus()
()。只是一个旁注,但您可能想用PascalCase::)命名您的方法Lookup TabIndex propertyUse
value.Focus()
()。只是旁注,但您可能想用PascalCase::)只有您给出的第三段代码有效。哦,我更喜欢另一种方式,因为它节省了代码空间。因为它至少能工作+1:)是的,Focus不工作,因为它正在等待ShowDialog结果,并且不会转到下一行。无论如何,在其他情况下,您仍然可以使用Focus方法以编程方式为文本框提供焦点=)。只有您提供的第三块代码可以工作。哦,我更喜欢另一种方式,因为它节省了代码空间。因为它至少可以工作+1:)是的,焦点不工作,因为它正在等待ShowDialog结果,并且不会转到下一行。无论如何,在其他情况下,您仍然可以使用焦点方法以编程方式将焦点赋予文本框=)。