在我的 WPF 应用程序中,需要显示一个非模式窗口。我正在使用 MVVM Light 框架。人们建议使用不同的库来这样做,但是是否有任何合适的控件可以使用 MVVM Light 或使用 WPF 本机库来做到这一点?
需要将该非模态窗口始终保持在最前面。
谢谢。
在我的 WPF 应用程序中,需要显示一个非模式窗口。我正在使用 MVVM Light 框架。人们建议使用不同的库来这样做,但是是否有任何合适的控件可以使用 MVVM Light 或使用 WPF 本机库来做到这一点?
需要将该非模态窗口始终保持在最前面。
谢谢。
要创建非模态窗口,您不必使用框架。WPF 库有足够的可能性来创建它。
最快的解决方案是创建一个新的Xaml Window
并在 Xaml Window 代码的属性内指定TopMost
优先级,并将其设置为 true。
<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="NonModalWindow" Height="300" Width="300" TopMost="True">
<Grid>
<!---- Some element defined in your window ---->
</Grid>
</Window>
创建此窗口后,只需调用它即可。
new NonModalWindow().Show();
如果你确实想把它变成一个Modal window
你可以使用下面的代码。
new NonModalWindow().ShowDialog(); // wooah a contradiction in the code