一个选项是启动不想要在不同线程上对话框影响的窗口。这可能会导致您的应用程序出现其他问题,但如果这些窗口确实封装了不同的工作流程,那可能不是问题。这是我写的一些示例代码,以验证它是否有效:

xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"

xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"

Title="{Binding Identifier}" Height="150" Width="150">

using System.ComponentModel;

using System.Threading;

using System.Windows;

namespace ModalSample

{

///

/// Interaction logic for MyWindow.xaml

///

public partial class MyWindow : INotifyPropertyChanged

{

public MyWindow()

{

InitializeComponent();

DataContext = this;

}

private int child = 1;

private string mIdentifier = "Root";

public string Identifier

{

get { return mIdentifier; }

set

{

if (mIdentifier == value) return;

mIdentifier = value;

if (PropertyChanged != null)

PropertyChanged(this, new PropertyChangedEventArgs("Identifier"));

}

}

private void OpenNormal_Click(object sender, RoutedEventArgs e)

{

var window = new MyWindow {Identifier = Identifier + "-N" + child++};

window.Show();

}

private void OpenIndependent_Click(object sender, RoutedEventArgs e)

{

var thread = new Thread(() =>

{

var window = new MyWindow {Identifier = Identifier + "-I" + child++};

window.Show();

window.Closed += (sender2, e2) => window.Dispatcher.InvokeShutdown();

System.Windows.Threading.Dispatcher.Run();

});

thread.SetApartmentState(ApartmentState.STA);

thread.Start();

}

private void OpenModal_Click(object sender, RoutedEventArgs e)

{

var window = new MyWindow { Identifier = Identifier + "-M" + child++ };

window.ShowDialog();

}

public event PropertyChangedEventHandler PropertyChanged;

}

}

我采用this blog post在不同的线程上运行WPF窗口。

showdialog wpf 如何关闭_使用ShowDialog()阻止所有其他Windows的WPF模态窗口相关推荐

  1. showdialog wpf 如何关闭_WPF用ShowDialog()弹出窗体时控制该窗体的显示位置,并传值回父窗体...

    原文:http://blog.csdn.net/kiss0622/article/details/5852153 方法一: 1.父窗口代码 Window1.xaml.cs private void B ...

  2. 瑞士表商 Swatch 关闭 IT 系统,阻止网络攻击

     聚焦源代码安全,网罗国内外最新资讯! 编译:奇安信代码卫士团队 上周末,瑞士表商 Swatch 集团发现了针对其系统的网络攻击活动,随后关闭 IT 系统以阻止. Swatch 集团因生产多姿多彩的手 ...

  3. wpf 开源框架_.NET Core跨平台基础框架:10 篇热文汇总

    (给DotNet加星标,提升.Net技能) 本文精选了DotNet 2019年12月份的10篇热门文章.其中有技术分享.技术资源. 注:以下文章,点击标题即可阅读 <C#异步编程 > Ta ...

  4. listbox wpf 取消边框_停止使用箭头C#WPF导航列表框(Stop listbox from navigating with arrows C# WPF)...

    停止使用箭头C#WPF导航列表框(Stop listbox from navigating with arrows C# WPF) 我有一个画布,可以使用箭头键移动元素,但是当我在列表框中选择当前在画 ...

  5. 二级菜单打开一个时其他关闭_简介——菜单和工具栏

    1.1 ChemDraw用户界面(ChemDraw User Interface) 默认情况下,用户界面由常用工具栏,主菜单和文档状态栏组成.用户界面如下图所示: ChemDraw用户界面 1.2 菜 ...

  6. 未能初始化appscan应用程序现在将关闭_教你如何将电脑瞬间关掉

    关闭一台电脑的最简单方法就是按电源键,或者点击操作系统(如Windows)的关机按钮,当触发该操作时,操作系统将会将自己关闭,然后断掉主板的电源.更暴力一点的就是长按电源键,甚至拔电源. 本文将介绍一 ...

  7. 启动之后自己关闭_如何关闭Mac开机总是要输入密码?

    我们给自己的MAC设置了登录密码之后,每次登录系统都要输入密码,这样很麻烦,怎么才能不用密码直接登录MAC呢?今天小编就帮大家解决这个问题. 如果您是管理员,则可以指定所有其他用户看到的登录窗口外观. ...

  8. wpf mvvm框架_[Windows] 在 Microsoft Docs 网站中挖掘 MVVM 的各种学习资源

    最近写了一些 MVVM 框架的文章,翻了一些 Microsoft Docs 的文档,顺便就对 MVVM 本身来了兴致,想看看更多当年相关的文档.在 MVVM 出现后十多年,我在不同的场合见到过多种 M ...

  9. window10鼠标加速怎么关_鼠标加速怎么关闭_电脑鼠标加速如何关闭

    2019-09-27 09:17:11 对于游戏玩家来讲,鼠标灵敏度是非常关键的,如果太慢会影响游戏进程,拖累队友.有些用户为了加快Mac系统鼠标反应速度开启加速功能,设置之后发现并不适合自己,那么M ...

最新文章

  1. 另外一些MySQL优化措施
  2. java 重定向和转发 的区别
  3. 数字图像处理及MATLAB实现实验五——图像增强
  4. win10连接蓝牙耳机_苹果手机蓝牙耳机无法连接怎么办?
  5. JavaScript字符串转数字的5种方法及其陷阱
  6. linux 误删除mysql表能恢复吗,Linux中误删除数据文件和归档日志的恢复方法
  7. warning:1071 (42000) Specified key was too long;max key length is 1000 bytes
  8. 那个即刻,他回来啦!
  9. 高通android logo,高通平台android kernel 开机logo展示和传统linux一样
  10. 免费车型车系品牌api
  11. spark学习之SparkStreaming
  12. 数字信号中的各种频率
  13. 磁盘分区被格式化了,格式化之前的文件恢复方法
  14. xss绕过字符过滤_xss绕过过滤之方法
  15. 计算机启动后无法进入系统怎么办,开机进不了windows系统怎么办
  16. 质量控制新七工具:亲和图、过程决策程序图、关联图、树形图、优先矩阵、活动网络图和矩阵图
  17. 你长痘吗?留下痘印吗?民间秘方
  18. No provider available from registry localhost:9090 for service
  19. 【工具】目前几种常见的线上接口文档管理平台的比较
  20. 接入第三方|接入声网灵动课堂 流程图

热门文章

  1. java毕业设计智能医疗推荐系统Mybatis+系统+数据库+调试部署
  2. 【C++】关于C++中使用namespace的解释以及cstdio和stdio.h的区别
  3. 百度云自定义分享密码
  4. E. Buy and Delete
  5. iOS-UI之弧形文字
  6. canal 实现mysql 数据实时同步
  7. 证监会:美的集团吸收合并小天鹅获无条件通过
  8. 自媒体平台横行的时代下,企业现在有必要做网站吗?
  9. 看各国首脑夸张防卫!(组图)
  10. JQuery删除移除节点元素指定id或者指定class