UIElement.OnChildDesiredSizeChanged(UIElement) UIElement.OnChildDesiredSizeChanged(UIElement) UIElement.OnChildDesiredSizeChanged(UIElement) UIElement.OnChildDesiredSizeChanged(UIElement) Method


子要素のサイズが変更されるときのレイアウト動作をサポートします。Supports layout behavior when a child element is resized.

 virtual void OnChildDesiredSizeChanged(System::Windows::UIElement ^ child);
protected virtual void OnChildDesiredSizeChanged (System.Windows.UIElement child);
abstract member OnChildDesiredSizeChanged : System.Windows.UIElement -> unit
override this.OnChildDesiredSizeChanged : System.Windows.UIElement -> unit
Protected Overridable Sub OnChildDesiredSizeChanged (child As UIElement)


UIElement UIElement UIElement UIElement

サイズが変更される子要素。The child element that is being resized.


このメソッドは通常、アプリケーション コードで呼び出されません。This method is typically not called by your application code. 公開されるため、クラスで、その派生型の要素が無効な可能性がありますレイアウト状態を確認します。It is exposed so that derived element classes can make further checks on their own possibly invalid layout state. クラスは、子要素をサイズ変更に基づくレイアウト パスの処理時間を最小限に抑えるの最適化を試みるも可能性があります。Classes could also attempt optimizations to minimize the processing time for a layout pass based on size changes to child elements. 例を実装する要素のクラスを派生するOnChildDesiredSizeChangedは、Gridコントロール。An example derived element class that implements OnChildDesiredSizeChanged is the Grid control.

注意 (継承者)

OnChildDesiredSizeChanged(UIElement)メソッドが呼び出し元の既定の実装InvalidateMeasure()自体。The OnChildDesiredSizeChanged(UIElement) method has the default implementation of calling InvalidateMeasure() on itself. 一般的な実装になります: 最適化を独自の要素をサポートし、基本通常呼び出すOnChildDesiredSizeChanged(UIElement)から少なくとも 1 つのコード分岐 (キャッシュ ロジック、独自のメジャーごとに「ダーティ」状態を示すもの)。A typical implementation would be: do whatever optimization your own element supports, and then typically call base OnChildDesiredSizeChanged(UIElement) from at least one of the code branches (the one that indicated "dirty" state per your own measure caching logic).

このメソッドはサイズの変更を開始した子自体があった場合、レイアウト処理でのみ呼び出されます。This method is only called in the layout processing if it was the child itself that originated the size changes. それ以外の場合、親要素が開始する場合、Measure(Size)を渡すと、レイアウト システム規則に従って、親が再計算レイアウト既にします。Otherwise, if the parent element initiates the Measure(Size) pass, according to the layout system rules, the parent is recalculating layout already. 親要素のサイズ変更に子要素のレイアウトの呼び出しからの戻り値は必要ありませんので、レイアウト システムは子と親の順序のレイアウトを処理します。The layout system processes layout in the order of child-to-parent, so no return to parent element sizing from the child element layout calls is necessary.