C#中的文本框中为空或"0"

Elf*_*foc 3 c# winforms

我想在文本框值为0或null时隐藏项目(面板).

        if (Wier_r1.Text == null | Wier_r1.Text=="0") panelR1.Visible = false;

        else panelR1.Visible = true;
Run Code Online (Sandbox Code Playgroud)

为什么它在texbox中不起作用 - null.0正在工作.

Eri*_*ric 7

我认为文本框不会为Text值返回null.我相信它会返回一个空字符串.

我想你想做这样的事情:

if( string.IsNullOrEmpty(Wier_r1.Text) || Wier_r1.Text == "0"){
  // Do something
}
Run Code Online (Sandbox Code Playgroud)

  • `.Text`是一个`string`; 它绝不是`== 0` (3认同)

Ste*_*eve 5

因为TextBox.Text永远不会为null.是一个空字符串.

你的测试应该是:

 if (Wier_r1.Text == string.Empty || Wier_r1.Text=="0") 
     panelR1.Visible = false; 
 else 
     panelR1.Visible = true; 
Run Code Online (Sandbox Code Playgroud)

在这种情况下,正确的OR运算符是|| 不是|.