Gewusst wie: Auflisten des Zeichnungsinhalts eines visuellen Objekts
Aktualisiert: November 2007
Das Drawing-Objekt stellt ein Objektmodell für das Auflisten des Inhalts eines Visual bereit.
Beispiel
Im folgenden Beispiel wird mit der GetDrawing-Methode der DrawingGroup-Wert von einem Visual abgerufen und aufgelistet.
Tipp
Wenn Sie den Visualinhalt auflisten, rufen Sie Drawing-Objekte ab, und nicht die zugrunde liegende Darstellung der Renderingdaten als Anweisungsliste für Vektorgrafiken. Weitere Informationen finden Sie unter Übersicht über das Grafikrendering in Windows Presentation Foundation.
public void RetrieveDrawing(Visual v)
{
DrawingGroup dGroup = VisualTreeHelper.GetDrawing(v);
EnumDrawingGroup(dGroup);
}
// Enumerate the drawings in the DrawingGroup.
public void EnumDrawingGroup(DrawingGroup drawingGroup)
{
DrawingCollection dc = drawingGroup.Children;
// Enumerate the drawings in the DrawingCollection.
foreach (Drawing drawing in dc)
{
// If the drawing is a DrawingGroup, call the function recursively.
if (drawing.GetType() == typeof(DrawingGroup))
{
EnumDrawingGroup((DrawingGroup)drawing);
}
else if (drawing.GetType() == typeof(GeometryDrawing))
{
// Perform action based on drawing type.
}
else if (drawing.GetType() == typeof(ImageDrawing))
{
// Perform action based on drawing type.
}
else if (drawing.GetType() == typeof(GlyphRunDrawing))
{
// Perform action based on drawing type.
}
else if (drawing.GetType() == typeof(VideoDrawing))
{
// Perform action based on drawing type.
}
}
}
Siehe auch
Konzepte
Übersicht über Zeichnungsobjekte
Übersicht über das Grafikrendering in Windows Presentation Foundation