2013-12-20 3 views
1

я в настоящее время проверки C# код для ввода данных пользователя, как например:более эффективный или заявление

if (e.KeyCode == Keys.Enter && InputTextbox.Text.Contains("good morning") 
    || 
    e.KeyCode == Keys.Enter && InputTextbox.Text.Contains("morning")) 

Есть еще один способ использования || «или», чтобы все могли быть в одной строке? Что-то вроде:

if (e.KeyCode == Keys.Enter && InputTextbox.Text.Contains("good morning" || "morning") 

ответ

1

Hm, например: если ваш InputTextBox это: «Привет, доброе утро». Я не думаю, что приведенные выше ответы будут работать, если это то, что вы ищете (с более строгой строкой, проверенной против заданных меньших строк), вы должны проверить это наоборот:

if (e.KeyCode == Keys.Enter && (InputTextbox.Text.Contains("good morning") || InputTextbox.Text.Contains("morning")) 

Просто подумал, что я хотел бы указать на это, если бы не случай игнорировать этот ответ.

+0

Я использовал этот метод. Спасибо. –

+0

Я рад, что я указал на это, без проблем. –

4
var allowedText = new List<string> { "good morning", "morning" }; 

if (e.KeyCode == Keys.Enter && allowedText.Contains(InputTextbox.Text)) 
{ 
    // do something 
} 
+1

@ Vulcan Спасибо за исправление синтаксиса. –

4

Вы можете создать массив со значениями, которые вы хотите проверить, а затем проверить, если массив содержит значение TextBox

string[] a = {"good morning" , "morning"); 

if (e.KeyCode == Keys.Enter && a.Contains(InputTextbox.Text)) 
{ 
} 
0

Это достаточно:

if (e.KeyCode == Keys.Enter && InputTextbox.Text.Contains("morning")) 
{ 
} 

Это происходит потому, что если InputTextbox.Text.Contains("good morning") является true, InputTextbox.Text.Contains("morning") должен быть true, а также.

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