2012-11-15 3 views
2

Я пытаюсь сосредоточить свою программу так, чтобы при изменении страниц она оставалась центрированной. Поскольку он стоит сейчас, он начинается с центра, но когда я меняю страницу, он больше не центрируется.Центрирование новой страницы в wpf

Я пробовал использовать следующий код, но он не работает для страницы. Благодаря!

this.Left = (SystemParameters.PrimaryScreenWidth/2) - (this.ActualWidth/2); 

this.Top = (SystemParameters.PrimaryScreenHeight/2) - (this.ActualHeight/2); 
+0

где вы использовали этот фрагмент кода? –

+0

Он работает, когда я использую его в MainWindow, но он не работает, когда я пытаюсь использовать его для страницы. – Deafsilver

+0

Если это не просто заставка, я бы нашел это крайне неприятным, как пользователь. –

ответ

0

Я не так много представления о странице, но окне действительно имеет свойство WindowStartupLocation, это свойство может иметь одно из трех значений перечислений 1) CenterScreen, 2) ручной, 3) CenterOwner, Так что если вы хотите, чтобы ваш MainWindow быть в центре экрана, то просто установите свойство, как

<myWindow:CustomPage x:Class="WpfApplication4.MainWindow" 
    xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
    xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
    xmlns:myWindow="clr-namespace:WpfApplication4" 
    Title="MainWindow" Height="800" Width="800" WindowStartupLocation="CenterScreen"> 
<Grid> 

</Grid> 

Я надеюсь, что это поможет.

Смежные вопросы