2016-04-14 2 views
2

Во-первых, я хочу проверить Textbox1 для некоторых данных, а если он пуст, то ничего не отображать. Но если в Textbox1 есть некоторые данные, теперь я хочу проверить Textbox 2, является ли он пустым или нет ... Если текстовое поле2 пусто, тогда отобразите только текст в текстовом поле1, но если в текстовом поле2 есть некоторые данные, Textbox1 + Textbox2 ".Как проверить 2 текстовых поля для данных в VB .Net

Вот код, который я написал, но мне не удалось получить желаемый результат.

Dim CheckText As String 
    If (Not String.IsNullOrWhiteSpace(Textbox1.Text)) Then 
    ElseIf (String.IsNullOrWhiteSpace(Textbox2.Text)) Then 
     CheckText = String.Format("<a href={0}{1}{0}>{2} by {3}</a>{4}{4}</div>", qmQuotes, Link1.Text, Textbox.Text, xyz.Text, Environment.NewLine) 
    Else 
     CheckText = String.Format("<a href={0}{1}{0}>{2}: {4} by {3}</a>{5}{5}</div>", qmQuotes, Link1.Text, Textbox.Text, xyz.Text, abc.Text, Environment.NewLine) 
    End If 

ответ

2

Ваша главная проблема заключается в том, что вы использовали ElseIf вместо второго вложенного If.

Так что если Textbox1.Text не было пустым, время выполнения никогда не достигает какой-либо части CheckText. Если он был пуст и Textbox2.Text не было, то была выполнена часть . Если оба пустые, часть Else была выполнена. Вот исправленный код:

Dim CheckText As String 
If (Not String.IsNullOrWhiteSpace(Textbox1.Text)) Then 
    If (String.IsNullOrWhiteSpace(Textbox2.Text)) Then 
     CheckText = String.Format("{0}...", Textbox1.Text) 
    Else 
     CheckText = String.Format("{0}{1}...", Textbox1.Text, Textbox2.Text) 
    End If 
End If 

Я сократил String.Format часть, так как это не было для меня очевидно, какой именно текст, который вы хотите отобразить.

+1

Спасибо большое Брат ... работал как шарм и отличное объяснение тоже – winnu

Смежные вопросы