从用户控件到应用程序中心的Silverlight弹出窗口

时间:2012-05-29 16:03:58

标签: silverlight popup center

我有一个带边框的弹出窗口'在用户控件内部500x500 ...当用户单击按钮打开此弹出窗口时,我希望边框显示在应用程序的中心(水平/垂直)而不是用户控件。

我该怎么做?

1 个答案:

答案 0 :(得分:3)

您可以获取根视觉的当前大小并获取值。 请记住,如果您对RootVisual有控制权,请执行正确的转换

Dim PrincipalObject = CType(Application.Current.RootVisual, System.Windows.UIElement)

Dim posY = (PrincipalObject.RenderSize.Height / 2) - (popup.Height / 2)
Dim PosX = (PrincipalObject.RenderSize.Width / 2) - (popup.Width / 2)

C#应该是..

System.Windows.UIElement PrincipalObject = (System.Windows.UIElement) Application.Current.RootVisual;
Double posY = (PrincipalObject.RenderSize.Height / 2) - (popup.Height /2)
Double posX = (PrincipalObject.RenderSize.Width / 2) - (popup.Width /2)