私はちょうどListBoxの中にたくさんのxmlデータを表示するアプリケーションで作業を始めましたが、問題はすべてのxmlアイテムが子の値を持っているわけではありません。そのlistBoxコードは表示されません。Windows Phone 7ダイナミックリストボックステンプレート
例:
<item>
<id>1</id>
<body>Some text</body>
<upload></upload>
<created>Some text</created>
</item>
私はこの方法でデータを取得し、私のリストを移入しています:私はしたいもの
<ListBox Margin="0,0,-12,0" Name="userDrops">
<ListBox.ItemTemplate>
<DataTemplate>
<StackPanel Margin="0,0,0,17" Width="432">
<RichTextBox>
<Paragraph>
<Run Text="{Binding Body}" FontSize="25" FontFamily="Segoe WP"></Run>
</Paragraph>
<Paragraph>
<Hyperlink NavigateUri="{Binding Upload}" TargetName="_blank" FontSize="25" FontFamily="Segoe WP">{Binding Upload}</Hyperlink>
</Paragraph>
<Paragraph>
<Run Text="{Binding Created}" FontFamily="Segoe WP SemiLight"></Run>
</Paragraph>
</RichTextBox>
</StackPanel>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
:
var data = from query in loadedData.Descendants("item")
select new droppedItem
{
Id = (int)query.Element("id"),
Body = (string)query.Element("body"),
Upload = (string)query.Element("upload"),
Created = (DateTime)ConvertFromUnixTimestamp((double)query.Element("created"))
};
userDrops.ItemsSource = data;
そして、私のXAMLは次のようになりますxmlアップロードの子が値を保持している場合にのみ、アップロード情報を保持する段落を表示します。それ以外の場合は、listBoxから削除してください。私はどのように基本的なリストボックスのテンプレートを変更する方法を把握することはできません。
助けがあれば助かります。
を意味していますか? –
いいえ、アップロードが空の場合、「 」(アップロード値を保持する段落)を非表示にしたい –
アップロードが空の場合、何も表示されませんが正しいですか? –