У меня есть приложение WPF, после нажатия кнопки приложение переходит к расчету, который может занять 4-10 секунд. Я хотел бы обновить непрозрачность фона и показать индикатор выполнения во время этой операции.
Для этого я использую этот код:
this.Cursor = System.Windows.Input.Cursors.Wait;
// grey-out the main window
SolidColorBrush brush1 = new SolidColorBrush(Colors.Black);
brush1.Opacity = 0.65;
b1 = LogicalTreeHelper.FindLogicalNode(this, "border1") as Border;
b1.Opacity = 0.7;
b1.Background = brush1;
// long running computation happens here ....
// show a modal dialog to confirm results here
// restore background and opacity here.
Когда я запускаю код, фон и непрозрачность не изменяются, пока не появится модальное диалоговое окно. Как я могу получить эти визуальные изменения прямо сейчас , прежде чем начнутся вычисления? В Windows Forms был метод Update () для каждого элемента управления, который делал это по мере необходимости, насколько я помню. Что такое аналог WPF?