我正在尝试阻止用户在文本框中输入任何值,以防止在代码执行期间出错。
文本框值分配了一个默认值,如下所示:
wrkTbx.Text = "00 : 00 : 00 : 000";
restTbx.Text = "00 : 00 : 00 : 000";
这就是我试图处理用户在文本框中没有输入任何值的方法,但代码仍然运行,并且没有显示消息框以表示没有输入。
有谁知道如何处理null输入?因为下面的代码不起作用。
//Assign text box time string to string variables.
//check if string is empty.
if (String.IsNullOrEmpty(wrkTbx.Text) && String.IsNullOrEmpty(restTbx.Text))
{
MessageBox.Show("Please enter a work/rest interval");
}
else
{
rstString = restTbx.Text;
wrkString = wrkTbx.Text;
}
答案 0 :(得分:0)
Brian J per your request
也许您需要将您的逻辑更改为if(wrkTbx.Text ==您应该分配给属性的默认值,常量或变量,然后将&amp;&amp;条件更改为更可行的|| < / p>
在类中声明一个const字符串,例如
public const string constWrkTxt = "00 : 00 : 00 : 000";
public const string constRestTxt = "00 : 00 : 00 : 000";
在您的方法中检查以下
//check if wrkTbx.Text == constWrkTxt || constRestTxt
if (wrkTbx.Text == constWrkTxt) || restTbx.Text == constRestTxt ))
{
MessageBox.Show("Please enter a work/rest interval");
wrkTbx.Focus();
//or to stop the flow / continuation use return;
}
else
{
rstString = restTbx.Text;
wrkString = wrkTbx.Text;
}
取决于您声明rstString和wrkString的方式和位置,您可以消除并在条件通过时使用文本框中的值