時々、WPF が WTF に変わります =)
MSDN から:
FrameworkElement.Loaded イベント 要素がレイアウトされ、レンダリングされ、操作の準備ができたときに発生します。
オブジェクト の有効期間イベント Loaded イベントは、最終的なレンダリングの前に発生しますが、レイアウト システムがレンダリングに必要なすべての値を計算した後で発生します。
すべてのバインディングが適用された後、コード ビハインドでウィンドウ画面の位置を調整する必要があります。現在、これは Loaded イベント ハンドラーで行われます。ウィンドウがどのようにジャンプするかがわかりましたが、目にはあまり心地よくありません。
アップデート1
private void DialogViewLoaded(object sender, RoutedEventArgs e)
{
MaxHeight = SystemParameters.FullPrimaryScreenHeight * 0.8;
MaxWidth = SystemParameters.FullPrimaryScreenWidth * 0.8;
SizeToContent = SizeToContent.WidthAndHeight;
SizeToContent = SizeToContent.Manual;
MaxHeight = double.PositiveInfinity;
MaxWidth = double.PositiveInfinity;
WindowHelper.CenterWindowOnScreen(this);
}
このコードは、私が XAML で実装したかった機能を実装しています。 柔軟な XAML のみのレイアウト。出来ますか?