У меня есть приложение для Windows на базе vb.net, где при нажатии кнопки «GO» в БД загружается куча данных. Так что в моем приложении, как только нажата кнопка «GO», я хочу просто отключить ее и хотел бы включить ее обратно, когда загрузка будет завершена.
Теперь в моем конкретном методе для btnGo_Click () у меня есть:
btnGo.Enabled = False
в качестве первой строки и
btnGo.Enabled = True
как последняя строка в том же методе.
Но я не понимаю, почему «GO», хотя и отображается как отключенный, по-прежнему позволяет щелкать, когда идет обработка. Кроме того, если я удаляю последнюю строку, она отключается навсегда и не разрешает событие click.
Пожалуйста, подскажите, что я делаю не так?
Редактировать (от 25 января 2012 г.): я внес изменения в соответствии с предложением наших коллег, но здесь я столкнулся с новой проблемой. Я столкнулся с проблемой, когда текстовое поле обновляется, но не всегда. Я обновил свое текстовое поле в событии "_ProgressChanged" фонового рабочего потока. В моем случае, если загружено 10 записей. Затем в texbox ожидаются 10 строк обновлений. Но только несколько строк отображаются в текстовом поле. Это снова проблема перекраски? Пожалуйста, предложите ... Потому что все остальное сделано согласно вашему предложению