要做到這一點非常簡單,只需設置一個DataContext在構造函數:
public MyUserControl()
{
#if !RELEASE
//DataContext = new CustomerList { Customers = new [] {
// new Customer { Name = "Contoso", ZipCode = 12345 },
// new Customer { Name = "NorthWind", ZipCode = 12345 },
//}};
#endif
InitializeComponent();
...
}
請注意,該代碼被註釋掉的事實。當你想看到數據時,只需取消註釋代碼。 #if !RELEASE
可以防止您意外地在發佈版中包含示例數據(以及花費任何CPU加載它)。
如果你的樣本數據是很大的,只是把它放在XML或數據庫中,並加載它:
public MyUserControl()
{
#if !RELEASE
//DataContext = XmlSerializerManager.Deserialize<CustomerList>(
// File.ReadAllBytes("CustomerSampleData.xml"));
#endif
InitializeComponent();
...
}
在這兩種情況下,樣本數據會在設計顯示,每當您取消註釋代碼。當執行你的應用程序時,它將被真實數據取代。