Я только недавно начал работать над приложением, которое отображает кучу xml-данных в listBox, но проблема заключается не в том, что каждый элемент xml имеет дочернее значение (в моей проблеме, загрузка), поэтому его код listBox не должен отображаться.Windows Phone 7 Dynamic ListBox Template
Пример:
<item>
<id>1</id>
<body>Some text</body>
<upload></upload>
<created>Some text</created>
</item>
Я получаю данные и заполнение мой список таким образом:
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 выглядит следующим образом:
<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>
То, что я хочу do отображает только абзац, содержащий информацию о загрузке, если ребенок загрузки xml имеет значение. В противном случае просто удалите его из списка. Однако я не могу понять, как изменить основной шаблон списка.
Любая помощь будет замечательной!
значит ли вы, если Загрузить пуст, вы хотите, чтобы скрыть всю 'StackPanel'? –
Нет, я имею в виду, если загрузка пуста, я хочу скрыть ' ' (Абзац, содержащий значение загрузки) –
Если загрузка пустая, она ничего не отобразит, правильно? –