我想知道是否有可能獲得任何txt輸入字段爲空的信息?檢查winforms字段是否爲空
目前我有10個輸入txt字段,我想知道如果我有例如50個輸入可以做到這一點,當然必須有比檢查每個字段更好的方法。
感謝
我想知道是否有可能獲得任何txt輸入字段爲空的信息?檢查winforms字段是否爲空
目前我有10個輸入txt字段,我想知道如果我有例如50個輸入可以做到這一點,當然必須有比檢查每個字段更好的方法。
感謝
您可以使用LINQ
bool hasEmptyTextBox = Controls.OfType<TextBox>().Any(tb => tb.Text.Length == 0);
如果你也想確保,如果沒有空格,那麼你可以使用tring.IsNullOrWhiteSpace方法:
bool hasEmptyTextBox = Controls.OfType<TextBox>()
.Any(tb => String.IsNullOrWhiteSpace(tb.Text));
正如@okrumnow正確指出的那樣,這將僅檢查TextBoxes,它們是表單或用戶控件的直接子對象醇。如果您需要檢查各個層面的文本框,那麼你應該這樣做遞歸:
public bool HasEmptyTextBox(Control control)
{
if (Controls.OfType<TextBox>().Any(tb => tb.Text.Length == 0))
return true;
foreach(var child in Controls)
if (HasEmptyTextBox(child))
return true;
return false;
}
BTW這是beeter把你的文本框部分validation,然後手動檢查他們所有。
如果它們都放在同一個容器內。 – okrumnow
@okrumnow是的,很好的通知 –
FormName.Controls.OfType<TextBox>().Where(c => c.Text.Trim() == "")
VB?或C#? ..你的意思是文本框? – matzone
c#,textbox .... – user1765862
[This cartoon](http://noisydecentgraphics.typepad.com/.shared/image.html?/photos/uncategorized/2008/03/11/yourproduct.jpg)很經典。 –