【发布时间】:2015-04-24 05:33:51
【问题描述】:
我正在尝试在 WPF 中绘制一个非静态(可变宽度高度 x y)填充矩形。我有使用 Winforms 的经验,但我以前从未使用过 WPF。这就是我在 WinForm 中使用 GDI+ 绘图调用所做的事情。
private void Form1_Paint(object sender, PaintEventArgs e)
{
e.Graphics.FillRectangle(_brush1, _rect1);
}
而且,每当我更改 _rect1 属性时,我都会致电 this.Invalidate()。
我在这件事上看到的所有“教程”都只是在.xaml 文件中绘制静态的非填充矩形(或者他们没有提到节目的代码在哪里......)。
我知道 WPF 的绘画工作方式不同,我只是不明白如何。我找到了一个similar methodprotected override void OnRender(DrawingContext dc) 并尝试将其添加到我创建项目public partial class MainWindow : Window 时得到的默认类中,但屏幕上没有绘制任何内容。我担心的另一件事是,DrawingContext 类只有一个 DrawRectangle 类,而没有 FillRectangle。
我怎样才能有效地画出这样的东西?
【问题讨论】: