【发布时间】:2014-10-29 16:22:23
【问题描述】:
如何在继承自 Canvas - 系统 ui 元素的自定义画布上绘制以下图表作为背景?
感谢任何有用的链接。
【问题讨论】:
标签: c# .net wpf wpf-controls wpf-4.0
如何在继承自 Canvas - 系统 ui 元素的自定义画布上绘制以下图表作为背景?
感谢任何有用的链接。
【问题讨论】:
标签: c# .net wpf wpf-controls wpf-4.0
您可以将Canvas.Background 设置为一些DrawingBrush。这个画笔只需要渲染一个矩形(通过使用一些RectangleGeometry)。由于支持TileMode,我们可以沿水平轴和垂直轴重复这个矩形,并为您制作完整的网格:
<Canvas>
<Canvas.Background>
<DrawingBrush TileMode="Tile" Viewport="-10,-10,40,40"
ViewportUnits="Absolute">
<DrawingBrush.Drawing>
<GeometryDrawing>
<GeometryDrawing.Geometry>
<RectangleGeometry Rect="0,0,50,50"/>
</GeometryDrawing.Geometry>
<GeometryDrawing.Pen>
<Pen Brush="Gray" Thickness="1"/>
</GeometryDrawing.Pen>
</GeometryDrawing>
</DrawingBrush.Drawing>
</DrawingBrush>
</Canvas.Background>
</Canvas>
请注意,您可以在 Canvas 之外绘制一些内容,但其背景始终位于其区域内。所以你需要为你的画布正确设置尺寸。
【讨论】: