c# - 如何将焦点授予已创建的窗口而不是创建新实例?

标签 c# wpf

我找到了很多关于如何防止 Windows.Forms 的多个实例的主题,但我仍然找不到如何防止 WPF 窗口的多个实例。我会解释我的想法。我有一个 WPF 窗口。这个窗口有一个漂亮的自定义按钮。单击该按钮时,它会打开新窗口。我的问题是,当我多次点击同一个按钮时,同一个窗口出现的次数与我点击该按钮的次数一样多。如何防止这种情况?是否有可能只打开一个新窗口来获取焦点?

最佳答案

那么在创建一个新的之前你必须检查它是否被创建:

伪类代码(这里只有记事本)

private YourWindow wnd = null;

void OnButton_Click()
{
    if (wnd == null) wnd = new YourWindow();
    wnd.Show();
}

关于c# - 如何将焦点授予已创建的窗口而不是创建新实例?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8785480/

相关文章:

c# - 如何从不同的类注册鼠标事件

c# - 添加控件后未呈现超链接文本

c# - Treeview IsExpanded无法启动

c# - 后台线程上的 WPF BusyIndi​​cator

c# - 根据ViewModel中的属性更改DataGrid的边框颜色

c# - 使用 StringFormat 的 WPF 格式化标签

c# - 使用变量与魔数(Magic Number)的性能影响

c# - 切片图像wpf

c# - 在 DataTemplate.Triggers 中设置 DataTemplate.VisualTree

wpf - 如何使某些任务更改我的WPF控件