在这里,我们再次去看孩子,另一个露营者在WPF Databinding周围的树林里迷了路。这是一个攀登数据绑定倒置冰墙的富有成效的一天,但我的智慧结束了这一点。没有我找到的例子或SNOOP的数量正在帮助我找到我的问题。希望你们这三个人都有一些数据绑定的摇滚明星可以帮助一个brotha! :)
XML文件 - 更改了面孔和名称以保护无辜
<?xml version="1.0" encoding="utf-8" ?>
<Mappings>
<Mapping>
<Class1>WonderBread</Class1>
<Class2>Tortilla</Class2>
<Properties>
<Property>
<Jx>name</Jx>
<Dyn>Name</Dyn>
<Create>1</Create>
<Update>0</Update>
</Property>
<Property>
<Jx>Juice</Jx>
<Dyn>Juice</Dyn>
<Create>1</Create>
<Update>0</Update>
</Property>
<Property>
<Jx>Fred</Jx>
<Dyn>Fred</Dyn>
<Create>1</Create>
<Update>0</Update>
</Property>
<Property>
<Jx>Love</Jx>
<Dyn>Love</Dyn>
<Create>1</Create>
<Update>0</Update>
</Property>
</Properties>
</Mapping>
</Mappings>
如何加载此XML文件并将其设置为我的datagrids DataContext。在构造函数中完成。这通过SNOOP正确加载我可以在DataContext中看到XML文件。
// load the ObjectMappingXML file and set as Gridview Context
XEClassMappings = XElement.Load(ConfigurationManager.AppSettings["ClassMappingXML"]);
dgMapping.DataContext = XEClassMappings;
显示内容的XAML代码
<DataGrid x:Name="dgMapping" ItemsSource="{Binding Path=Elements[Property]}" Height="569">
<DataGrid.Columns >
<DataGridTextColumn Header="JxAPI Prop" Binding="{Binding Path=Element[Jx].Value}"/>
<DataGridTextColumn Header="Dyn Prop" Binding="{Binding Path=Element[Dyn].Value}"/>
</DataGrid.Columns>
</DataGrid>
我遗失的所有神圣的名字是什么? 8小时充满希望的F5让我陷入了恐慌......
答案 0 :(得分:0)
您必须访问properties元素。将ItemsSource绑定更改为以下内容:
<DataGrid x:Name="dgMapping" ItemsSource="{Binding Path=Element[Mapping].Element[Properties].Elements[Property]}" Height="569">
它会起作用。
希望有所帮助