UIElement.DesiredSize UIElement.DesiredSize UIElement.DesiredSize UIElement.DesiredSize Property

Definizione

Ottiene le dimensioni calcolate da questo elemento durante il passaggio di misurazione del processo di layout.Gets the size that this element computed during the measure pass of the layout process.

public:
 property System::Windows::Size DesiredSize { System::Windows::Size get(); };
public System.Windows.Size DesiredSize { get; }
member this.DesiredSize : System.Windows.Size
Public ReadOnly Property DesiredSize As Size

Valore della proprietà

Dimensioni calcolate, che diventano le dimensioni desiderate per il passaggio di disposizione.The computed size, which becomes the desired size for the arrange pass.

Esempi

Nell'esempio seguente viene DesiredSize illustrato come parte di MeasureOverride un'implementazione di.The following example shows DesiredSize as part of a MeasureOverride implementation. Si noti Measure come viene chiamato immediatamente prima di DesiredSizeottenere.Notice how Measure is called immediately prior to obtaining DesiredSize. Ciò garantisce che DesiredSize contenga un valore legittimo.This assures that DesiredSize holds a legitimate value.

    virtual Size MeasureOverride(Size availableSize) override
    {
        Size^ panelDesiredSize = gcnew Size();

        // In our example, we just have one child. 
        // Report that our panel requires just the size of its only child.
        for each (UIElement^ child in InternalChildren)
        {
            child->Measure(availableSize);
panelDesiredSize = child->DesiredSize;
        }
        return *panelDesiredSize ;
    }
protected override Size MeasureOverride(Size availableSize)
{
    Size panelDesiredSize = new Size();

    // In our example, we just have one child. 
    // Report that our panel requires just the size of its only child.
    foreach (UIElement child in InternalChildren)
    {
        child.Measure(availableSize);
        panelDesiredSize = child.DesiredSize;
    }

    return panelDesiredSize ;
}
Protected Overrides Function MeasureOverride(ByVal availableSize As System.Windows.Size) As System.Windows.Size
    Dim panelDesiredSize As Size = New Size()
    ' In our example, we just have one child. 
    ' Report that our panel requires just the size of its only child.
    For Each child As UIElement In InternalChildren
        child.Measure(availableSize)
        panelDesiredSize = child.DesiredSize
    Next
    Return panelDesiredSize
End Function

Commenti

Il valore restituito da questa proprietà sarà una misura valida solo se il valore della IsMeasureValid proprietà è. trueThe value returned by this property will only be a valid measurement if the value of the IsMeasureValid property is true.

DesiredSizeviene in genere controllato come uno dei fattori di misurazione quando si implementano sostituzioni del ArrangeOverridecomportamento MeasureOverridedel layout, ad esempio OnRender , o OnRender (nel caso RenderSize , è possibile verificare invece che dipende dal implementazione di).DesiredSize is typically checked as one of the measurement factors when you implement layout behavior overrides such as ArrangeOverride, MeasureOverride, or OnRender (in the OnRender case, you might check RenderSize instead, but this depends on your implementation). A seconda dello scenario, DesiredSize potrebbe essere pienamente rispettato dalla logica di implementazione, è possibile applicare vincoli su DesiredSize e tali vincoli possono anche modificare altre caratteristiche dell'elemento padre o dell'elemento figlio.Depending on the scenario, DesiredSize might be fully respected by your implementation logic, constraints on DesiredSize might be applied, and such constraints might also change other characteristics of either the parent element or child element. Ad esempio, un controllo che supporta le aree scorrevoli (ma sceglie di non derivare dai controlli a livello di Framework WPF che già abilitano le aree scorrevoli) potrebbe confrontare DesiredSizele dimensioni disponibili con.For example, a control that supports scrollable regions (but chooses not to derive from the WPF framework-level controls that already enable scrollable regions) could compare available size to DesiredSize. Il controllo può quindi impostare uno stato interno che Abilita le barre di scorrimento Interfaccia utenteUI nell'oggetto per il controllo.The control could then set an internal state that enabled scrollbars in the Interfaccia utenteUI for that control. In alternativa DesiredSize , potrebbe anche essere ignorato in determinati scenari.Or, DesiredSize could potentially also be ignored in certain scenarios.

Si applica a

Vedi anche