我有一个VisualBrush,并且需要此VisualBrush作为图形。有人知道该怎么做吗?感谢您的提示!

最佳答案

您的问题实际上没有任何意义,因为VisualBrushDrawing无关(使用DrawingBrush会更有意义)。但是,您可以使用Drawing在其上绘画来创建VisualBrush。这样的事情应该工作:

public static Drawing GetDrawing(TileBrush brush)
{
    DrawingVisual drawingVisual = new DrawingVisual();
    DrawingContext drawingContext = drawingVisual.RenderOpen();
    drawingContext.DrawRectangle(brush, new Pen(Brushes.Transparent, 0.0), brush.ViewPort);
    drawingContext.Close();
    return drawingVisual.Drawing;
}

(这适用于从TileBrush继承的任何画笔,而不仅仅是VisualBrush)

10-05 22:22