简体   繁体   English

C#:在WPF中在图像上方绘制线条

[英]C# : Draw Lines on top of Image in WPF

I am filling Grid with image that I Draw Programatically. 我正在用我以编程方式绘制的图像填充Grid。

Now, I want to draw lines(Horizontal and vertial) on top of the Image. 现在,我想在图像上方绘制线条(水平和垂直)。 After adding Image to the grid as children, I want to draw lines. 在将Image作为子级添加到网格之后,我想绘制线条。 How can I do this ? 我怎样才能做到这一点 ?

var image = new System.Windows.Controls.Image
        {
            Source = DrawImage(products),
            Width = options.OutputWidth,
            Height = options.OutputHeight
        };

        var grid = new Grid();
        grid.ColumnDefinitions.Add(new ColumnDefinition { Width = GridLength.Auto });
        grid.ColumnDefinitions.Add(new ColumnDefinition { Width = GridLength.Auto });
        grid.Children.Add(image);

The image class extends FrameworkElement,so you can extend the image class and add ur drawing logic on OnRender(DrawingContext dc) method. 图像类扩展了FrameworkElement,因此您可以扩展图像类并在OnRender(DrawingContext dc)方法上添加绘制逻辑。

public class CustomeImage:Image{
protected ovveride OnRender(DrawingContext dc){
 dc.DrawLine(//line location and pen here)
}
}

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM