问题描述
提示:使用Wpf开发时,在打开二级窗口时,需要自定义设置二级窗口相对主窗口的位置时
解决方案:
/// <summary>
/// 打开子窗口
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void NewForm(object sender, RoutedEventArgs e)
{
Window1 window1 = new Window1();
//在屏幕中间显示
//window1.WindowStartupLocation = WindowStartupLocation.CenterScreen;
//在父窗口中间显示,
window1.WindowStartupLocation = WindowStartupLocation.CenterOwner;
window1.Owner = this;
//在任意位置使用
//window1.WindowStartupLocation = WindowStartupLocation.Manual;
//设置自定义距离
var width = this.Width / 2.0;
var height = window1.Height / 2.0;
//window1.Left = (SystemParameters.PrimaryScreenWidth / 2.0) + width;
//window1.Top = (SystemParameters.PrimaryScreenHeight / 2.0) - height;
window1.ShowDialog();
}
参考学习文章出处:
链接: WPF中控制窗口显示位置的三种方式.