无法在类型为'Binding'的'Source'属性上设置'Binding'。'Binding'只能在DependencyObject的DependencyProperty上设置。
<TreeView Height="400" Width="400">
<TreeViewItem ItemsSource="{Binding Source={Binding Path=Data}, XPath=*,
Converter={StaticResource stringToXmlDataProviderConverter},ConverterParameter=/root }" Header="header" />
</TreeView>
What is wrong with ItemsSource="{Binding Source={Binding Path=Data}?
Data = "<root><parm1>1</parm1><parm2>2</parm2><parm3>3</parm3></root>"
<TreeViewItem ItemsSource="{Binding Path=Data}" Header="Parameters" />
向TreeView中填充一个元素(字符串),因此数据上下文是正确的。
编辑:这段代码更好用。是否有一种通用的方法来在TreeView中读取XML?我不知道XML的结构。在我看到的所有示例中,您必须声明子节点类型。
<TreeViewItem DataContext="{Binding Path=Data, Converter={StaticResource stringToXmlDataProviderConverter}}" ItemsSource="{Binding .}" Header="Parameters" />
Data
看起来是什么样子?它的数据类型是什么?它有哪些属性? - Gabe