2

ユーザーコントロール内に「境界線」500x500のポップアップがあります...ユーザーがボタンをクリックしてこのポップアップを開くと、ユーザーコントロールではなくアプリケーションの中央(水平/垂直)に境界線を表示したいと思います。

どうすればよいですか?

4

1 に答える 1

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)
于 2012-05-29T17:22:25.637 に答える