我想将PopUp准确地置于屏幕中央。 我使用了Usercontrol在弹出窗口中显示。 但是,我计算HorizontalOffset和垂直偏移的方式是错误的。
Popup popUp = new Popup();
ProgressScreen progressScreen = new ProgressScreen();
popUp.Child = progressScreen;
//popUp.HorizontalOffset = (this.ActualWidth/2) + (progressScreen.ActualWidth / 2);
popUp.VerticalOffset = (this.ActualHeight / 2) + (progressScreen.ActualHeight / 2);
popUp.HorizontalOffset = (this.ActualWidth - progressScreen.ActualWidth) / 2;
popUp.Height = this.ActualHeight;
popUp.Width = this.ActualWidth;
popUp.IsOpen = true;
答案 0 :(得分:0)
我认为这应该让它起作用
popUp.Placement = System.Windows.Controls.Primitives.PlacementMode.Center;
但是为了工作,弹出窗应放在占据整个屏幕的容器中