экран программного обеспечения исчезает, когда я нажимаю, чтобы открыть диалоговое окно в wpf

#c# #wpf

#c# #wpf

Вопрос:

у меня есть приложение WPF. когда я нажимаю кнопку на главном экране программного обеспечения или в пользовательском интерфейсе оболочки, чтобы открыть диалоговое окно, экран программного обеспечения исчезает, и он показывает мне экран предыдущего процесса, который я открыл перед использованием экрана программного обеспечения, такого как code или explorer. а затем, чтобы перейти к экрану, я должен щелкнуть программное обеспечение на панели задач. это код для отображения этого диалогового окна.

public void ShowView() {

         this.Owner = (Window)Shell;
        this.ShowDialog();            

    }
  

Комментарии:

1. Было бы легче помочь вам, если бы вы предоставили больше подробностей. Какой код запускается при нажатии кнопки? Как выглядит привязка данных?

2. Некоторый код был бы полезен….

Ответ №1:

Ваш диалог должен быть установлен с окном владельца и должен быть открыт, отправлен в потоке пользовательского интерфейса владельца.

     Application.Current.Dispatcher.BeginInvoke(
         new Action(
             () =>
                 { 
                   DialogWindow.Owner = Application.Current.MainWindow;
                   DialogWindow.ShowDialog();
                 } ));
  

Помогает ли это?