在WPF程序中,当我们给绑定的数据源编写DataTemplate时,往往想在设计器中看到效果,这时就需要在设计器中添加一些示例数据。
如果实现这一功能呢?一种简单的做法是在代码中手动添加,
public MainWindow()
{
InitializeComponent();
if (DesignerProperties.GetIsInDesignMode(this))
{
DataContext = new Person() { Name = "Harry" };
}
}
关于这种方式的示例可以参看这篇文章:Custom Listbox ItemTemplate。
这种方式比较简单直观,但有的时候设计器却不能显示出示例数据,由于调试都没法调试,这时往往就无从下手了。
实际上,VisualStudio和Blend的设计器本身就支持WPF程序中显示示例数据,MSDN文章Sample Data in the WPF and Silverlight Designer详细描述了如何在设计器中使用示例数据。
这篇文章写的很详细,我就不多介绍了,如果想快速上手的话,可以参看下MSDN文章:演练:使用 Silverlight 设计器中的示例数据。另外,Blend在此基础上,提供了一个可视化的快速构造示例数据的功能(好像要Blend 3以上的版本,没有具体看过低版本是否支持该功能),感兴趣的可以参看下这篇文章:Sample Data With Blend。
实际上,本文所介绍的只是设计属性功能的一角,关于设计器中的示例数据还有许多种其它功能,详情请参看MSDN文章:Silverlight 设计器中的设计时属性。