在 WPF 中有很多種方式來描繪圖形, 其 DrawingVisual 是一個輕量級的 Class, 它需一個 container 來承接, 並不提供 Layout, Hit-Testing 及 Event-Handling. 那來實作一下如何使用 DrawingVisual 來描繪圖形. 建立一個 class, 它繼承 FrameworkElement Class, 並描繪一個 Rectangle . public class MyVisualHost : FrameworkElement { private VisualCollection childern; public MyVisualHost() { childern = new VisualCollection(this); childern.Add(CreateDrawingVisualRectangle()); } protected override int VisualChildrenCount { get { return childern.Count; } } protected override Visual GetVisualChild(int index) { return childern[index]; } private DrawingVisual CreateDrawingVisualRectangle() { DrawingVisual drawing = new DrawingVisual(); using (DrawingContext content = drawing.RenderOpen()) { content.DrawRectangle(Brushes.Red, new Pen(Brushes....
留言
張貼留言