我需要构建一个表单来编辑XML节点属性。 不幸的是,我不知道属性的数量和名称。
假设我想编辑第一个节点MYNODE的属性:
<MYROOT>
<MYPARENTNODE1 Name = MyName1>
<MYNODE Attr1 = Val1 Attr2 = Val2 ... Attr_N = Val_N />
</MYPARENTNODE1>
<MYPARENTNODE2 Name = MyName2>
<MYNODE Attr1 = Val1 Attr2 = Val2 ... Attr_M = Val_M />
</MYPARENTNODE2>
</MYROOT>
首先,我选择节点属性:
<XmlDataProvider
x:Key="dataprovider" Source="myfile.xml"
XPath="/MYROOT/MYPARENTNODE[@Name='MyName1']/MYNODE/@*"
/>
现在,如果我将它绑定到列表框,我将所有属性值作为列表项。我需要的是将一个datatemplate应用于它们,以便我可以为每个属性配置LABEL-EDITCONTROL,以便对其进行编辑。
类似的东西:
<DataTemplate DataType="{ ??? }">
<StackPanel Orientation="Horizontal">
<Label Content="{Binding Name}" />
<TextBox Text="{Binding Value}" />
</StackPanel>
</DataTemplate>
我真的无法在微软或谷歌上找到任何有用的例子!
有任何帮助, 西蒙
答案 0 :(得分:0)
如果所有属性都需要相同的DataTemplate,则无需指定DataType。