Как сбросить высоту и перецентрировать форму WPF во время выполнения? - PullRequest
0 голосов
/ 01 ноября 2010

Я пытаюсь сбросить высоту моей формы в событии Loaded, но положение формы больше не является центрированным экраном.

private void Window_Loaded(object sender, RoutedEventArgs e)
{
    var manualHeight = 0
        + this.MessageRow.ActualHeight
        + this.ButtonsRow.ActualHeight
    ;
    this.Height = manualHeight;

    //What to do to re-center the form?
}

Пожалуйста, помогите, если вы знаете, как. Большое спасибо!

Nam.

[Изменить]

Я перезаписываю ответ здесь благодаря xandy справке.

var screenHeight += System.Windows.SystemParameters.PrimaryScreenHeight;
window.Top = (screenHeight - manualHeight) / 2;

1 Ответ

0 голосов
/ 01 ноября 2010

вручную установите положение окна y на:

window.Top = (screenHeight - manualHeight) / 2;

где вы можете иметь высоту экрана здесь .

...