我想知道如何使用XmlDataProvider为Blend 4中的设计时使用提供任意XML数据。我已经尝试了几种方法来指定它,但Blend不会选择它。我的UI元素最终空白。
我意识到Blend具有生成和管理示例数据的功能,但这对我的一些简单用户控件来说是一个很大的开销。我正在寻找在Xaml文件中内联工作的东西(即隐式模式),而不会生成大量额外文件。将XmlDataProvider放入资源然后执行d:DataContext来引用它似乎是一个很好的方法,但我无法使它工作。
我无法使用任何viewmodel类(例如使用d:DesignData或使用ObjectDataProvider),因为它们不会公开所有属性的setter。如果它们是只读的,则无法使用设计时数据设置这些属性。
如何在纯Xaml中构建一个我可以在设计时绑定的模型?
答案 0 :(得分:0)
如果我理解正确的话,
我通常以这种方式做事,但是,我无法得到你的模型有多复杂,但这种方式可能在设计时为你工作,以便测试特定的数据模板等。
<Window.Resources>
<XmlDataProvider x:Key="People" XPath="/IDs" >
<x:XData>
<IDs>
<ID name="A2231" />
<ID name="A3dsa" />
<ID name="Ad21d" />
<ID name="Ad231" />
</IDs>
</x:XData>
</XmlDataProvider>
</Window.Resources>
<StackPanel Grid.Row="0" Grid.Column="1" DataContext="{StaticResource People}">
<Label Width="200" Height="200" Content="{Binding XPath=ID/@name}"/>
</StackPanel>
这是你的意思吗?如果没有,请详细说明。