Как отобразить два разных окна сообщений, если поля в текстовых полях неверны - PullRequest
1 голос
/ 27 июня 2019

Мне нужно отобразить сообщение для двух разных textBoxes в моем приложении, если информация введена неправильно.

Обычно, когда пользователь вводит информацию, он выполняет поиск в базе данных, чтобы проверить, есть ли эта информация. Если это не так, он должен отобразить сообщение о том, что введенная информация неверна

Это мой код, который я использую

SqlConnection con = new SqlConnection(@"Data Source=DEVELOPMENT\ACCESSCONTROL;Initial Catalog=ACCESSCONTROL;User ID=sa;Password=P@55w0rd123");
SqlCommand check_User_Name = new SqlCommand("SELECT COUNT(*) FROM NewVisitor WHERE (IDNumber = @IDNumber AND PersonVisit = @PersonVisit)", con);
check_User_Name.Parameters.AddWithValue("@IDNumber", idNumber_TxtBox.Text);
check_User_Name.Parameters.AddWithValue("@PersonVisit", personVisiting_TxtBox.Text);
con.Open();

int UserExist = (int)check_User_Name.ExecuteScalar();

if (UserExist > 0)
{
      .....
}
else
{
    MessageBox.Show("No Visitor with ID Number: " + idNumber_TxtBox.Text + " Exists");

    MessageBox.Show("No Employee,  " + personVisiting_TxtBox.Text + " Exists");
}

В настоящее время он будет отображать только первые messageBox, если любая из этих данных введена неправильно

Ответы [ 2 ]

0 голосов
/ 27 июня 2019

Невозможно отобразить два окна сообщений одновременно, поскольку окно сообщений является Модальным окном . Таким образом, он остановит выполнение MainWindow, пока не закроется первое окно сообщения.

Вы можете справиться с этим, используя одно окно сообщения с комбинацией обоих сообщений.

string errorMessage = $"No Visitor with ID Number: {idNumber_TxtBox.Text} Exists") + Environment.NewLine + $"No Employee, {personVisiting_TxtBox.Text} Exists");
MessageBox.Show(errorMessage);
0 голосов
/ 27 июня 2019

Вам необходимо объединить два сообщения в одну строку. О, и не связывайте строки символом +, используйте строку. Формат или интерполяция строки ($)

var sb = new StringBuilder();
sb.AppendLine($"No Visitor with ID Number: {idNumber_TxtBox.Text} Exists");
sb.AppendLine($"No Employee, {personVisiting_TxtBox.Text} Exists");
MessageBox.Show(sb.ToString());
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...