private void but_Click(object sender, RoutedEventArgs e)
{
(sender as Button).IsEnabled = false;
doSomeThing();//e.g run for more than 20 seconds
(sender as Button).IsEnabled = true;
}
Когда я нажимаю кнопку в первый раз, она отключается. Затем запускается doSomeThing ()
, и он содержит обновленный код пользовательского интерфейса или некоторую переменную пользовательского интерфейса.Я имею в виду, что если я снова нажму кнопку во время выполнения doSomeThing ()
, то событие but_Click
срабатывает снова после того, как эта кнопка включает возврат.
Он поддерживает очередь запущенных событий, т. Е. n количество раз, которые я нажал.
Итак, как предотвратить срабатывание при отключенной кнопке? Учтите, что в этом сценарии doSomething содержит элементы управления пользовательского интерфейса, привязанные к коду. Таким образом, в этом случае мы не можем запустить фоновый поток. Помогите мне с решением.