У меня есть оконное приложение, которое запускает процесс с окном WPF. Я отправляю текущий идентификатор процесса в начальный процесс, чтобы окно WPF могло правильно установить владельца:
MainWindow mainWindow = new MainWindow();
int parentProcessId = int.Parse(e.Args[0]);
System.Diagnostics.Process parentProcess = System.Diagnostics.Process.GetProcessById(parentProcessId);
WindowInteropHelper helper = new WindowInteropHelper(mainWindow);
helper.Owner = parentProcess.MainWindowHandle;
mainWindow.ShowDialog();
Alt + Tab работает как положено - окно WPF блокирует родительское окно. Но он не блокирует элементы управления родительской вдовы, поэтому я могу нажать sh каждую кнопку в родительском окне и даже закрыть ее.
Я запускаю новый процесс, как этот:
string arguments = Process.GetCurrentProcess().Id.ToString();
ProcessStartInfo startInfo = new ProcessStartInfo(Path.Combine(Path.GetDirectoryName(Assembly.GetExecutingAssembly().Location), "WPF.App.exe"), arguments);
Process.Start(startInfo);
Как можно ли открыть окно WPF, чтобы оно блокировало элементы управления окна владельца (а не только отображалось сверху и блокировало Alt + Tab)?
Спасибо.