textbox1, textbox2, textbox3의 3 개의 텍스트 상자가 있습니다. 사용자는 하나의 텍스트 상자에만 정보를 입력 할 수 있습니다.
private string determineSearchParameter()
{
//Execute statements if ALL textboxes are empty
if (string.IsNullOrWhiteSpace(textbox1.Text) && string.IsNullOrWhiteSpace(textbox2.Text) &&
string.IsNullOrWhiteSpace(textbox3.Text))
{
return "Please Enter a Search Parameter";
}
//Execute all fields have an input
if (!string.IsNullOrEmpty(textbox2.Text) && !string.IsNullOrWhiteSpace(textbox1.Text) &&
!string.IsNullOrWhiteSpace(textbox3.Text))
{
return "Please only enter one Criteria";
}
//Execute statments if multiple textboxes have values
if (!string.IsNullOrWhiteSpace(textbox3.Text) && !string.IsNullOrWhiteSpace(textbox1.Text))
{
return "Please only enter one Criteria";
}
if (!string.IsNullOrWhiteSpace(textbox3.Text) && !string.IsNullOrWhiteSpace(textbox2.Text))
{
return "Please only enter one Criteria";
}
if (!string.IsNullOrWhiteSpace(textbox1.Text) && !string.IsNullOrWhiteSpace(textbox2.Text))
{
return "Please only enter one Criteria";
}
if (!string.IsNullOrWhiteSpace(textbox1.Text) && string.IsNullOrEmpty(textbox2.Text) &&
string.IsNullOrEmpty(textbox3.Text))
{
return "Something else";
}
if (!string.IsNullOrWhiteSpace(textbox2.Text) && string.IsNullOrEmpty(textbox1.Text) &&
string.IsNullOrEmpty(textbox3.Text))
{
return "Something there";
}
if (!string.IsNullOrWhiteSpace(textbox3.Text) && string.IsNullOrEmpty(textbox1.Text) &&
string.IsNullOrEmpty(textbox2.Text))
{
return "Something here";
}
return "";
}
이러한 텍스트 상자의 유효성을 검사하는 다른 방법이 있습니까? 나는 이것의 더 짧은 버전을 선호합니다.
어때 :
var state1 = string.IsNullOrWhiteSpace(textbox1.Text);
var state2 = string.IsNullOrWhiteSpace(textbox2.Text);
var state3 = string.IsNullOrWhiteSpace(textbox3.Text);
if (!(state1 || state2 || state3))
{
return "Please Enter a Search Parameter";
}
if (!(state1 ^ state2 ^ state3))
{
return "Please only enter one Criteria";
}
if (state1)
{
return "Something else";
}
if (state2)
{
return "Something there";
}
return "Something here";
이 기사는 인터넷에서 수집됩니다. 재 인쇄 할 때 출처를 알려주십시오.
침해가 발생한 경우 연락 주시기 바랍니다[email protected] 삭제
몇 마디 만하겠습니다