我有一个VisualBrush,需要这个VisualBrush作为图纸。有人知道如何做到这一点吗?谢谢你的任何提示!
发布于 2010-06-02 02:42:45
您的问题没有实际意义,因为VisualBrush与Drawing无关(使用DrawingBrush会更有意义)。但是,可以通过使用VisualBrush在其上绘制来创建Drawing。像这样的东西应该是有效的:
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)
发布于 2010-06-05 09:47:04
以下是XAML版本:
<GeometryDrawing Geometry="M0,0 L1,0 1,1 0,1 Z">
<GeometryDrawing.Brush>
<VisualBrush>
...
</VisualBrush>
</GeometryDrawing.Brush>
</GeometryDrawing>https://stackoverflow.com/questions/2951901
复制相似问题