簡體   English   中英

C#中的文本框中為空或“0”

[英]Null or “0” in text box in C#

我想在文本框值為0或null時隱藏項目(面板)。

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

        else panelR1.Visible = true;

為什么它在texbox中不起作用 - null。 0正在工作。

我認為文本框不會為Text值返回null。 我相信它會返回一個空字符串。

我想你想做這樣的事情:

if( string.IsNullOrEmpty(Wier_r1.Text) || Wier_r1.Text == "0"){
  // Do something
}

因為TextBox.Text永遠不會為null。 是一個空字符串。

你的測試應該是:

 if (Wier_r1.Text == string.Empty || Wier_r1.Text=="0") 
     panelR1.Visible = false; 
 else 
     panelR1.Visible = true; 

在這種情況下,正確的OR運算符是|| 不是|。

.Text上的TextBox不會是null 如果你的意思是空白字符串 ,那么測試"" ,或使用:

if(string.IsNullOrEmpty(Wier_r1.Text) || Wier_r1.Text == "0") {...}

另請注意|之間的區別 || 它將其更改為短路“或”(即如果第一個是真的,它將不會評估第二個) - 這通常是可以預先設定的,但不應該改變這個特定情況下的邏輯

panelR1.Visible = !string.IsNullOrEmpty(Wier_r1.Text) && Wier_r1.Text != "0";

嘗試:您缺少使用或|| 正常。

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

試試(||運算符)

if (string.IsNullOrEmpty(Wier_r1.Text) || Wier_r1.Text=="0")

或簡短形式:

panelR1.Visible = (!string.IsNullOrEmpty(Wier_r1.Text)) && (Wier_r1.Text != "0");

文本框中沒有存儲空值; 它們總是一個字符串,所以你需要檢查“”。

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

嘗試(Wier_r1.Text == null || Wier_r1.Text == "0")

我不確定textfield的Text屬性是否為null。 有疑問,請使用此方法:

if (System.String.IsNullOrEmpty(Wier_r1.Text) || Wier_r1.Text=="0") panelR1.Visible = false;

我假設你想在沒有文字時隱藏面板,對嗎? 那將是一個空字符串。

我可能會這樣做

panelR1.Visible = !(string.IsNullOrEmpty(Wier_r1.Tex) || Wier_r1.Text=="0");

正如其他人所說,C#中的邏輯或運算符是||,單個| 是一個按位或。

視為對象並使用.equal for it ..

    if (Wier_r1.Text.equals("") || Wier_r1.equals(0)) 
    panelR1.Visible = false;
else 
    panelR1.Visible = true;

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM