是否可以将XAML中WPF窗口的手动启动位置设置为在屏幕的 Bottom-Right 角落开始?我可以在代码隐藏中执行此操作,但是当窗口打开时,它会弹出手动位置(屏幕中间左侧),然后它会跳到屏幕的右下方,看起来不太好。
我可以使用以下编码设置XAML角落左上角的位置:
<Window x:Class="WpfApplication1.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
Title="Window1"
Height="500" Width="500"
WindowStartupLocation="Manual"
Left="0" Top="0">
</Window>
我可以使用XAML编码对屏幕的右下角进行相同的操作以适应任何屏幕尺寸吗?
答案 0 :(得分:4)
我认为无法通过xaml
进行设置。但是,您甚至可以在窗口加载之前将其设置为不会从手动位置跳转。
public MainWindow()
{
InitializeComponent();
Left = System.Windows.SystemParameters.WorkArea.Width - Width;
Top = System.Windows.SystemParameters.WorkArea.Height - Height;
}
答案 1 :(得分:1)
在WindowStartupLocation="Manual"
中设置XAML
。
然后在Window_Loaded
中设置位置,
private void Window_Loaded(object sender, RoutedEventArgs e)
{
var desktopWorkingArea = System.Windows.SystemParameters.WorkArea;
this.Left = desktopWorkingArea.Right - this.Width;
this.Top = desktopWorkingArea.Bottom - this.Height;
}