7
我正在WPF中编写屏幕保护程序。我有屏幕保护程序工作,但是,它只显示在我的主显示器上。当用户有多个显示器时,是否有办法“禁用”或将图形绘制到其他显示器上?我已经做了一些探索,但没有发现任何相关的东西。WPF:多屏幕
UPDATE
从下面ananthonline的回答,我可以使用下面的窗口来完成对非主显示器的“黑掉”的效果:
<Window x:Class="ScreenSaver.BlackOut"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Cursor="None" WindowStyle="None" ResizeMode="NoResize" Background="Black">
</Window>
和初始化一个每个屏幕在App.xaml.cs
使用以下过程:
foreach (Screen s in Screen.AllScreens)
{
if (s != Screen.PrimaryScreen)
{
BlackOut blackOut = new BlackOut();
blackOut.Top = s.WorkingArea.Top;
blackOut.Left = s.WorkingArea.Left;
blackOut.Width = s.WorkingArea.Width;
blackOut.Height = s.WorkingArea.Height;
blackOut.Show();
}
}
注意导入到0123需要才能访问Screen
类。
谢谢,正是我需要的。 –