[英]Validating label content equal to null or string.Empty
我正在嘗試檢查標簽的值是否等於null, " ", string.Empty
,但每次我運行我的編碼時,都會收到以下錯誤:
你調用的對象是空的。
這是我的編碼:
if (lblSupplierEmailAddress.Content.ToString() == "") //Error here
{
MessageBox.Show("A Supplier was selected with no Email Address. Please update the Supplier's Email Address", "Warning", MessageBoxButton.OK, MessageBoxImage.Warning);
return;
}
如何檢查標簽內的字符串值是否等於null? 我可能會遺漏一些簡單的東西,如果是這樣,請忽略我的無能:P
更改
if (lblSupplierEmailAddress.Content.ToString() == "")
至
if (String.IsNullOrEmpty((string) lblSupplierEmailAddress.Content)
當lblSupplierEmailAddress.Content
實際為null
您當然不能在其上調用ToString
,因為它會導致NullReferenceException
。 但是,靜態IsNullOrEmpty
-method對此采取尊重,如果Content
為null
,則返回true
。
在C#6.0中這樣做
if(lblSupplierEmailAddress?.Content?.ToString() == "")
否則,如果lblSupplierEmailAddress
始終存在,您可以簡單地執行:
if(lblSupplierEmailAddress.Content?.ToString() == "")
等效代碼是:
if(lblSupplierEmailAddress.Content != null)
if (lblSupplierEmailAddress.Content.ToString() == ""){
//do something
}
if( null != lblSupplierEmailAddress.Content
&& string.IsNullOrEmpty(lblSupplierEmailAddress.Content.ToString() )
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.