Как приостановить код и дождаться изменения поля со списком.
Я пытаюсь дождаться, пока пользователь выберет элемент из поля со списком (cboExpireDays), прежде чем продолжить обновление базы данных.
В настоящее время, если вы нажмете кнопку "Да "во всплывающем окне сообщения, поле со списком получит фокус и перейдет к следующей строке кода "уверены, что хотите изменить запись".
private void btnUpdate_Click(object sender, EventArgs e) if (CurrentDays != "") { if (CurrentDays == "Never") { message = "Your password calls for '" + CurrentDays + "' updating. Do you want to change this?"; } else if (CurrentDays.Split(' ').Last() == "Days") { message = "Your password calls for updating every " + CurrentDays + ". Do you want to change this?"; } DialogResult result = MessageBox.Show(message, title, buttons); if (result == DialogResult.Yes) { cboExpireDays.Focus(); } } message = "Are sure you want to change the record for " + txtCompanyP2.Text; DialogResult result2 = MessageBox.Show(message, title, buttons); if (result2 == DialogResult.Yes) { Update the database }
Что я уже пробовал:
Я пробовал if (cboExpireDays.SelectedItem > -1) перед сообщением об обновлении базы данных. Это только вводило меня в цикл, после выбора элемента он просто возвращался к первой строке кода.
Richard MacCutchan
Вы должны использовать обработчик событий в ComboBox, чтобы получать уведомления, когда пользователь вносит изменения.
targa72
Это было бы прекрасно, если бы он остановился на поле со списком. код не останавливается на поле со списком, он просто устанавливает фокус там и переходит прямо к окну сообщения об обновлении базы данных.
Richard MacCutchan
Затем вам нужно посмотреть на свой дизайн. Вы можете использовать кнопку для принудительного обновления, но она не должна быть включена до тех пор, пока не сработает выбор выпадающего списка. Таким образом, вы можете убедиться, что у вас есть вся информация, прежде чем пытаться выполнить обновление.
ZurdoDev
Просто переместите и организуйте свой код, чтобы он делал то, что вы хотите.