WPF自定义控件 - 自绘篇2010-11-20 cnblogs Curry首先我们来说最简单的画面的呈现。一.在自定义控件上画矩形增加一个自定义控件类:

打开创建的类重载OnRender函数并注释掉静态构造函数,代码如下
public class CustomerRender : Control
{
//static CustomerRender()
//{
// DefaultStyleKeyProperty.OverrideMetadata(typeof (CustomerRender), new FrameworkPropertyMetadata(typeof (CustomerRender)));
//}
protected override void OnRender(DrawingContext drawingContext)
{
drawingContext.DrawRectangle(Brushes.Bisque, null, new Rect(0, 0, 50, 50));
}
}
在Window1这个类中修改如下
public partial class Window1 : Window
{
public Window1()
{
InitializeComponent();
CustomerRender customerRender = new CustomerRender();
customerRender.Width = 200;
customerRender.Height = 300;
this.Content = customerRender;
}
}
运行程序我们可以看到:

当然你还可以通过drawingContext来画圆圈、不规则矩形、圆角矩形 和写文字等等。具体可以看DrawingContext 中的API介绍和MSDN文档。