UIElement.RenderSize Proprietà

Definizione

Ottiene (o imposta) la dimensione di rendering finale di questo elemento.Gets (or sets) the final render size of this element.

public:
 property System::Windows::Size RenderSize { System::Windows::Size get(); void set(System::Windows::Size value); };
public System.Windows.Size RenderSize { get; set; }
member this.RenderSize : System.Windows.Size with get, set
Public Property RenderSize As Size

Valore della proprietà

Dimensioni di rendering per questo elemento.The rendered size for this element.

Esempi

Nell'esempio seguente viene illustrato come uno strumento decorativo personalizzato usa il RenderSize valore per creare e ridimensionare l'elemento grafico rettangolo che definisce lo strumento decorativo visuale come parte dell'implementazione di OnRender.The following example shows how a custom adorner uses the RenderSize value in order to create and size the rectangle graphic that defines the adorner, as part of its OnRender implementation.

protected override void OnRender(DrawingContext drawingContext)
{
  // Get a rectangle that represents the desired size of the rendered element
  // after the rendering pass.  This will be used to draw at the corners of the 
  // adorned element.
  Rect adornedElementRect = new Rect(this.AdornedElement.RenderSize);

  // Some arbitrary drawing implements.
  SolidColorBrush renderBrush = new SolidColorBrush(Colors.Green);
  renderBrush.Opacity = 0.2;
  Pen renderPen = new Pen(new SolidColorBrush(Colors.Navy), 1.5);
  double renderRadius = 5.0;

  // Just draw a circle at each corner.
  drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.TopLeft, renderRadius, renderRadius);
  drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.TopRight, renderRadius, renderRadius);
  drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.BottomLeft, renderRadius, renderRadius);
  drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.BottomRight, renderRadius, renderRadius);
}
Protected Overrides Sub OnRender(ByVal drawingContext As DrawingContext)
  ' Get a rectangle that represents the desired size of the rendered element
  ' after the rendering pass.  This will be used to draw at the corners of the 
  ' adorned element.
  Dim adornedElementRect As New Rect(Me.AdornedElement.RenderSize)

  ' Some arbitrary drawing implements.
  Dim renderBrush As New SolidColorBrush(Colors.Green)
  renderBrush.Opacity = 0.2
  Dim renderPen As New Pen(New SolidColorBrush(Colors.Navy), 1.5)
  Dim renderRadius As Double = 5.0

  ' Just draw a circle at each corner.
  drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.TopLeft, renderRadius, renderRadius)
  drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.TopRight, renderRadius, renderRadius)
  drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.BottomLeft, renderRadius, renderRadius)
  drawingContext.DrawEllipse(renderBrush, renderPen, adornedElementRect.BottomRight, renderRadius, renderRadius)
End Sub

Commenti

Importante

Non tentare di impostare questa proprietà, in XAMLXAML o nel codice, se si utilizza il sistema di layout a livello di Framework WPF.Do not attempt to set this property, either in XAMLXAML or in code, if using the WPF framework-level layout system. Quasi tutti gli scenari di applicazioni tipiche utilizzeranno questo sistema di layout.Nearly all typical application scenarios will use this layout system. Il sistema di layout non rispetta le dimensioni impostate direttamente nella proprietà RenderSize.The layout system will not respect sizes set in the RenderSize property directly. La proprietà RenderSize è dichiarata solo in scrittura per consentire determinati casi di bridging a livello di core WPF che aggirano intenzionalmente i tipici protocolli di layout, ad esempio il supporto per la classe Adorner.The RenderSize property is declared writable only to enable certain WPF core-level bridging cases that deliberately circumvent the typical layout protocols, such as support for the Adorner class.

Questa proprietà può essere utilizzata per controllare le dimensioni di rendering applicabili all'interno di override del sistema di layout, ad esempio OnRender o GetLayoutClip.This property can be used for checking the applicable render size within layout system overrides such as OnRender or GetLayoutClip.

Uno scenario più comune consiste nel gestire l'evento SizeChanged con l'override del gestore classi o l'evento OnRenderSizeChanged.A more common scenario is handling the SizeChanged event with the class handler override or the OnRenderSizeChanged event.

Si applica a

Vedi anche