当模态对话框打开时,允许在辅助窗口中进行用户交互

时间:2014-02-27 03:43:58

标签: c# wpf multithreading modal-dialog

我正在开发一个WPF应用程序,我有几个外围设备。我正在为其中一个外设写一个存根,打开一个模拟外设接口的辅助窗口。这主要用于开发和QA自动化目的。

我遇到的问题是,我的应用程序通常会在期望用户通过外围设备输入时打开模式对话框,并且该对话框阻止访问存根窗口,这意味着没有用户输入。

有没有办法让对话框授予访问辅助(存根)窗口的权限,同时仍然阻止主窗口?我已经尝试将第二个窗口放在单独的UI线程上,但它仍然被阻止。我目前正在研究多个应用领域,但我的应用程序通常通过事件与外围设备进行交互,并且(从我的阅读中)这些不会跨域共享。

1 个答案:

答案 0 :(得分:0)

我从未在WPF中尝试过相同的功能,但在Windows窗体中,模式对话只会影响在同一个线程上创建的表单。如果您在单独的线程上创建外围窗口,则模态对话框不会阻止它。它会使得在该窗口和UI线程上创建的窗口之间传递数据更加乏味,但肯定不是不可能。