理解textbox.Select()

时间:2013-02-20 08:35:08

标签: c# winforms

我正在尝试理解一段代码以便重构它。输入值有几个验证来检查它们是否有效,并且在每次验证时都有一行代码,我不明白它的作用。这是代码:

if (IsNotDouble(weight))
{
     MessageBox.Show("Weight must be a numeric value!");
     txtWeight.Select();
     return;
}

txtWeight是一个文本框。

任何人都可以告诉我txtWeight.Select()在这里做了什么。我无法理解为什么每次抛出错误后都应该在这里发布这段代码。

4 个答案:

答案 0 :(得分:3)

它将光标设置到您必须输入权重的文本框中。

答案 1 :(得分:2)

MSDN中的TextBox.Select()方法。

  

激活控件。如果控件的可选样式位在ControlStyles中设置为true,则Select方法将激活控件,它包含在另一个控件中,并且其所有父控件都可见并启用。

在您的情况下,只要验证检查失败,就会选择特定的文本框来激活它,以便将视觉焦点设置为它。

答案 2 :(得分:2)

根据MSDN

  

如果控件的可选样式位在ControlStyles中设置为true,则Select方法将激活控件。

这意味着,Select将焦点设置为Control,因此如果IsNotDouble(weight)true,您可以将焦点设置为txtWeight,以便用户可以立即在那里写一个文本,而不是通过整个表格寻找txtWeight

答案 3 :(得分:1)

选择方法可激活文本框控件,或者您可以将其视为将焦点置于文本框中。 在您的情况下可能不需要,因为当验证很开心时,很可能焦点已经放在该文本框上