Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/256.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 理解文本框。选择()_C#_Winforms - Fatal编程技术网

C# 理解文本框。选择()

C# 理解文本框。选择(),c#,winforms,C#,Winforms,我试图理解一段代码,以便重构它。输入值有几个验证,以检查它们是否有效,每次验证都有一行代码,我不理解它的作用。以下是代码: if (IsNotDouble(weight)) { MessageBox.Show("Weight must be a numeric value!"); txtWeight.Select(); return; } txtwweight是一个文本框 有人能告诉我txtweet.Select()在这里做什么吗?我不明白为什么每次抛出错误后都要

我试图理解一段代码,以便重构它。输入值有几个验证,以检查它们是否有效,每次验证都有一行代码,我不理解它的作用。以下是代码:

if (IsNotDouble(weight))
{
     MessageBox.Show("Weight must be a numeric value!");
     txtWeight.Select();
     return;
}
txtwweight
是一个文本框


有人能告诉我
txtweet.Select()
在这里做什么吗?我不明白为什么每次抛出错误后都要在这里发布这段代码。

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

文本框。MSDN中的Select()方法

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


在您的情况下,似乎每当验证检查失败时,都会选择特定的文本框来激活它,以便为其设置视觉焦点

Select方法激活文本框控件,或者您可以将其视为将焦点转移到文本框。 在您的情况下,可能不需要它,因为当验证发生时,焦点很可能已经在该文本框上,根据:

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

这意味着,
Select
将焦点设置为
控件
,因此在您的场景中,如果
不是double(weight)
true
,您可以将焦点设置为
txtwweight
,以便用户可以在那里立即编写文本,而无需通过整个表单查找
txtwweight