UIElement.RenderSize UIElement.RenderSize UIElement.RenderSize UIElement.RenderSize Property

定義

取得 (或設定) 這個項目的最終呈現大小。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

屬性值

這個項目的呈現大小。The rendered size for this element.

範例

下列範例示範如何使用自訂裝飾項RenderSize值,以便建立及調整大小的矩形圖形一部分中定義的裝飾項,其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

備註

重要

請勿嘗試設定這個屬性,在XAMLXAML或在程式碼,如果使用 WPF 架構層級配置系統。Do not attempt to set this property, either in XAMLXAML or in code, if using the WPF framework-level layout system. 幾乎所有的一般應用程式案例會使用此版面配置系統。Nearly all typical application scenarios will use this layout system. 版面配置系統將不會使用在設定的大小RenderSize直接屬性。The layout system will not respect sizes set in the RenderSize property directly. RenderSize屬性宣告為可寫入才能啟用特定 WPF 核心層級的橋接刻意避免一般版面配置通訊協定,例如支援的情況下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.

這個屬性可以用來檢查版面配置系統內適用的呈現大小會覆寫這類OnRenderGetLayoutClipThis property can be used for checking the applicable render size within layout system overrides such as OnRender or GetLayoutClip.

更常見的案例處理SizeChanged事件的類別處理常式覆寫或OnRenderSizeChanged事件。A more common scenario is handling the SizeChanged event with the class handler override or the OnRenderSizeChanged event.

適用於

另請參閱