Когда у вас есть кнопка, и вы выполняете что-то вроде:
Private Function Button_OnClick
Button.Enabled = False
[LONG OPERATION]
End Function
Тогда кнопка не будет серой, потому что длительная операция не позволяет потоку пользовательского интерфейса перерисовывать элемент управления. Я знаю, что правильное решение - запустить фоновый поток / диспетчер, но иногда это слишком сложно для простой операции.
Так как мне заставить кнопку перерисовываться в отключенном состоянии? Я попробовал .UpdateLayout () на кнопке, но это не дало никаких результатов. Я также пробовал System.Windows.Forms.DoEvents (), который обычно работает при использовании WinForms, но также не дал никакого эффекта.