2013-06-28 4 views
0

txt 입력 필드가 비어 있으면 정보를 얻을 수 있습니까?winforms 필드가 비어 있는지 확인하십시오.

현재 저는 10 개의 입력 txt 필드가 있습니다. 예를 들어 50 개의 입력을 가지고 있다면 이것이 어떻게 수행 될 수 있는지 궁금합니다. 모든 필드를 검사하는 것보다 더 좋은 방법이 있어야합니다.

감사

+1

VB? 또는 C#? .. 텍스트 상자를 의미합니까? – matzone

+0

C#, 텍스트 상자 .... – user1765862

+4

[이 만화] (http://noisydecentgraphics.typepad.com/.shared/image.html?/photos/uncategorized/2008/03/11/yourproduct.jpg)는 고전적입니다. –

답변

3

당신은 또한 있는지 확인하려면 어떤 공백이없는 경우 당신은, 당신은 tring.IsNullOrWhiteSpace 방법을 사용할 수 있습니다 LINQ

bool hasEmptyTextBox = Controls.OfType<TextBox>().Any(tb => tb.Text.Length == 0); 

를 사용할 수 있습니다

bool hasEmptyTextBox = Controls.OfType<TextBox>() 
           .Any(tb => String.IsNullOrWhiteSpace(tb.Text)); 

을 @okumnumnow가 올바르게 명시했듯이, 폼이나 사용자의 직계 자식 인 TextBoxes 만 검사합니다. ol. 당신은 모든 수준에 텍스트 상자를 확인해야하는 경우에, 당신은 재귀 적으로 수행해야합니다

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 그런 다음, 텍스트 상자에 몇 가지 validation을 넣어 수동으로 그들 모두를 확인하는 beeter입니다.

+0

모두가 같은 컨테이너에있는 경우. – okrumnow

+0

@okrumnow 예, 좋은 알림 –

1
FormName.Controls.OfType<TextBox>().Where(c => c.Text.Trim() == "") 
관련 문제