2

我可以在主屏幕或虚拟屏幕的某处将 wpf 窗口居中。但是,我想在整个虚拟屏幕上拉伸窗口,并在窗口中放置一个网格,使其填充主屏幕。下面的片段显示了我如何拉伸窗口、添加网格并拉伸网格以适应主屏幕尺寸,但是如何确定网格的位置(即边距)?

<Window x:Class="BC.Citrium.Screensaver.Saver.MainWindow"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        Title="MainWindow" 
        Height="{x:Static SystemParameters.VirtualScreenHeight}" 
        Width="{x:Static SystemParameters.VirtualScreenWidth}"
        Top="{x:Static SystemParameters.VirtualScreenTop}"
        Left="{x:Static SystemParameters.VirtualScreenLeft}"
        ResizeMode="NoResize" WindowStyle="None">
    <Grid Name="mainGrid"
          Height="{x:Static SystemParameters.MaximizedPrimaryScreenHeight}" 
          Width="{x:Static SystemParameters.MaximizedPrimaryScreenWidth}"
          Margin="???"
          Background="Bisque">
    </Grid>
</Window>

我可以绘制两个窗口,一个适合虚拟屏幕,另一个适合主屏幕,但这不是好方法。

4

1 回答 1

2

主屏幕的左上角始终位于屏幕位置 (0, 0)。这使得您想要使用的边距(-VirtualScreenLeft,-VirtualScreenTop)。调整窗口边框宽度和窗口标题高度。

于 2011-04-20T23:24:54.957 回答