Прочитать на английском

Поделиться через


UIElement.RenderSize Свойство

Определение

Возвращает (или задает) окончательный размер отрисовки этого элемента.

C#
public System.Windows.Size RenderSize { get; set; }

Значение свойства

Отрисовываемый размер этого элемента.

Примеры

В следующем примере показано, как пользовательский графический элемент использует RenderSize значение для создания и изменения размера прямоугольника, определяющего графический элемент, в рамках его OnRender реализации.

C#
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);
}

Комментарии

Важно!

Не пытайтесь задать это свойство в XAML или в коде, если используется система макета на уровне платформы WPF. Почти во всех типичных сценариях приложений будет использоваться эта система макета. Система макета не будет учитывать размеры, заданные в свойстве RenderSize напрямую. Свойство RenderSize объявляется записываемым только для Adorner включения определенных вариантов мостов на уровне ядра WPF, которые намеренно обходят типичные протоколы макета, например поддержку класса .

Это свойство можно использовать для проверки применимого размера отрисовки в переопределениях системы макета, таких как OnRender или GetLayoutClip.

Более распространенным сценарием SizeChanged является обработка события с переопределением обработчика класса или событием OnRenderSizeChanged .

Применяется к

Продукт Версии
.NET Framework 3.0, 3.5, 4.0, 4.5, 4.5.1, 4.5.2, 4.6, 4.6.1, 4.6.2, 4.7, 4.7.1, 4.7.2, 4.8, 4.8.1
Windows Desktop 3.0, 3.1, 5, 6, 7, 8, 9, 10

См. также раздел