I'm trying to draw a rectangle into an Image:
<Canvas>
<Image>
<Image.Source>
<DrawingImage>
<DrawingImage.Drawing>
<DrawingGroup x:Name="_drawingGroup" />
</DrawingImage.Drawing>
</DrawingImage>
</Image.Source>
</Image>
</Canvas>
The c# code looks like:
DrawingVisual visual = new DrawingVisual();
using (DrawingContext dc = visual.RenderOpen())
{
Rect rect = new Rect(new Point(100, 100), new Size(200, 100));
dc.DrawRectangle(Brushes.Blue, null, rect);
}
this._drawingGroup.Children.Add(visual.Drawing);
this._drawingGroup.Freeze();
As you can see, I intend to draw a rectangle with left top corner (100,100). But it doesn't work as expected - it always paint at (0,0). What's wrong with me?