我在页面中有以下简化元素:
<Grid x:Name="LayoutRoot"
DataContext="{Binding Source={StaticResource MyContext}}"
d:DataContext="{d:DesignData SampleData/MyContextSampleData.xaml}">
MyContext类有一些属性是引用,而不仅仅是简单的数据。该类的一个这样的属性是public MyReferenceType MyReferenceProperty
。
我已经为MyContext和MyReferenceType构建了示例数据。
这是MyReferenceTypeSampleData.xaml:
<data:MyReferenceType
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:data="clr-namespace:MyNamespace.Data;assembly=MyNamespace.Data"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
MyValueProperty0="True"
MyValueProperty1="123"
MyValueProperty2="abc"
/>
和MyContextSampleData.xaml是我难倒的地方。
<data:MyContext
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:data="clr-namespace:MyNamespace.Data;assembly=MyNamespace.Data"
xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
MyReferenceProperty="{d:DesignData SampleData/MyReferenceTypeSampleData.xaml}"
/>
MyReferenceProperty="{d:DesignData SampleData/MyReferenceTypeSampleData.xaml}"
当然是错的。我正在努力做与设置d:DataContext
相同的操作。我希望在示例数据中将属性设置为samplesata xaml。
这是否可行,如果没有,那么常见的解决方法是什么。当然这是一个典型的用例,因为模拟数据很少只是值类型。任何人都知道如何处理这个?