表示したい多数の UIElements (XAML ファイルのテンプレートを使用して構築されたもの) を含む StackPanel があります。
正しく表示するには、そのサイズを知る必要があります。
最初 Width/Height/ActualWidth/ActualHeight/DesiredSize
はすべて 0 または NaN です。panel.Measure(new Size(double.PositiveInfinity, double.PositiveInfinity)) を呼び出すと、その ActualWidth/ActualHeight/DesiredSize が計算されます (Width/Height は NaN のままです)。ここまでは順調ですね。
ただし、ActualWidth / DesiredSize.Width は、XAML テンプレートで指定された MinWidth 値に設定されますが、描画時にスタックパネルがこれよりも広くなります。
レンダリングされたサイズが ActualWidth/ActualHeight プロパティと一致しないのはなぜですか?
パネルを正しく配置できるようにレンダリング サイズを決定するにはどうすればよいですか?
(パネルは、マウス ポインターの近くに表示する必要があるポップアップ ツールチップ用ですが、ツールチップが許可された領域をオーバーフローする場合は、その位置を調整する必要があります)。