次のようなxmlファイルがあります。
<?xml version="1.0" encoding="utf-8"?>
<PhoneBook xmlns="http://tempuri.org/PhoneBook.xsd">
<Person>
<PersonItem name="name1" famil="famil1">
<Numbers>
<NumbersItem number="123456" />
<NumbersItem number="789100" />
</Numbers>
</PersonItem>
</Person>
<Person>
<PersonItem name="name2" famil="famil2">
<Numbers>
<NumbersItem number="654321" />
<NumbersItem number="111213" />
</Numbers>
</PersonItem>
</Person>
</PhoneBook>
以下を使用して、リストボックスをこの XML に正常にバインドしました。
Imports <xmlns:DaftarTelephone="http://tempuri.org/PhoneBook.xsd">
Dim xmlPhoneBook = XDocument.Load(CurDir() & "\PhoneBook.xml")
Dim q = From el In xmlPhoneBook ...<PhoneBook:PersonItem>
lst.ItemsSource = q 'my listbox
ここに私のXAMLがあります:
<Page.Resources>
<DataTemplate x:Key="PersonItemTemplate">
<StackPanel>
<TextBlock Text="{Binding Path=Attribute[famil].Value}"/>
<TextBlock Text="{Binding Path=Attribute[name].Value}"/>
<TextBlock Text="{Binding Path=Attribute[number].Value}"/>
</StackPanel>
</DataTemplate>
</Page.Resources>
<Grid x:Name="LayoutRoot" >
<ListBox x:Name="lst" ItemsSource="{Binding}" ItemTemplate="{DynamicResource PersonItemTemplate}" />
</Grid>
家族と名前が正しく表示されます。しかし、数字は表示されません!!!