DrawingVisual.RenderOpen DrawingVisual.RenderOpen DrawingVisual.RenderOpen DrawingVisual.RenderOpen Method

Определение

Открывает объект DrawingVisual для отрисовки.Opens the DrawingVisual object for rendering. Возвращенное значение DrawingContext можно использовать для отрисовки в объекте DrawingVisual.The returned DrawingContext value can be used to render into the DrawingVisual.

public:
 System::Windows::Media::DrawingContext ^ RenderOpen();
public System.Windows.Media.DrawingContext RenderOpen ();
member this.RenderOpen : unit -> System.Windows.Media.DrawingContext
Public Function RenderOpen () As DrawingContext

Возвраты

Примеры

В следующем примере создается объект и DrawingVisual его DrawingContext возвращаемое значение.In the following example, a DrawingVisual object is created, and its DrawingContext returned.

// Create a DrawingVisual that contains a rectangle.
private DrawingVisual CreateDrawingVisualRectangle()
{
    DrawingVisual drawingVisual = new DrawingVisual();

    // Retrieve the DrawingContext in order to create new drawing content.
    DrawingContext drawingContext = drawingVisual.RenderOpen();

    // Create a rectangle and draw it in the DrawingContext.
    Rect rect = new Rect(new System.Windows.Point(160, 100), new System.Windows.Size(320, 80));
    drawingContext.DrawRectangle(System.Windows.Media.Brushes.LightBlue, (System.Windows.Media.Pen)null, rect);

    // Persist the drawing content.
    drawingContext.Close();

    return drawingVisual;
}
' Create a DrawingVisual that contains a rectangle.
Private Function CreateDrawingVisualRectangle() As DrawingVisual
	Dim drawingVisual As New DrawingVisual()

	' Retrieve the DrawingContext in order to create new drawing content.
	Dim drawingContext As DrawingContext = drawingVisual.RenderOpen()

	' Create a rectangle and draw it in the DrawingContext.
	Dim rect As New Rect(New Point(160, 100), New Size(320, 80))
	drawingContext.DrawRectangle(Brushes.LightBlue, CType(Nothing, Pen), rect)

	' Persist the drawing content.
	drawingContext.Close()

	Return drawingVisual
End Function

Порядок, в котором выполняется рисование в контексте рисования, важен — каждая из них рисуется поверх остальных.The order in which you draw into the drawing context is important - each succeeding drawing is drawn on top of the others. В следующем примере прямоугольник рисуется первой, а затем текст.In the following example, the rectangle is drawn first, then the text.

// Retrieve the DrawingContext in order to draw into the visual object.
DrawingContext drawingContext = drawingVisual.RenderOpen();

// Draw a rectangle into the DrawingContext.
Rect rect = new Rect(new Point(160, 100), new Size(320, 80));
drawingContext.DrawRectangle(Brushes.LightBlue, (Pen)null, rect);

// Draw a formatted text string into the DrawingContext.
drawingContext.DrawText(
   new FormattedText("Hello, world",
      CultureInfo.GetCultureInfo("en-us"),
      FlowDirection.LeftToRight,
      new Typeface("Verdana"),
      36, Brushes.Black),
      new Point(200, 116));

// Persist the drawing content.
drawingContext.Close();
' Retrieve the DrawingContext in order to draw into the visual object.
Dim drawingContext As DrawingContext = drawingVisual.RenderOpen()

' Draw a rectangle into the DrawingContext.
Dim rect As New Rect(New Point(160, 100), New Size(320, 80))
drawingContext.DrawRectangle(Brushes.LightBlue, CType(Nothing, Pen), rect)

' Draw a formatted text string into the DrawingContext.
drawingContext.DrawText(New FormattedText("Hello, world", CultureInfo.GetCultureInfo("en-us"), FlowDirection.LeftToRight, New Typeface("Verdana"), 36, Brushes.Black), New Point(200, 116))

' Persist the drawing content.
drawingContext.Close()

Комментарии

При вызове Close метода DrawingContextобъекта текущее содержимое рисования заменяет любое предыдущее содержимое рисования, DrawingVisualопределенное для.When you call the Close method of the DrawingContext, the current drawing content replaces any previous drawing content defined for the DrawingVisual. Это означает, что не существует способа добавления нового содержимого рисования в существующее содержимое рисунка.This means that there is no way to append new drawing content to existing drawing content.

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

Дополнительно