我正在构建一个Silverlight应用程序,它应该从XML定义的对象中获取它的元素,但我有点困惑:我应该如何使用XML中的数据提供Silverlight应用程序?
示例:从以下XML获取数据以动态地在Silverlight中显示它:
<?xml version="1.0" encoding="utf-8" ?>
<item>
0 item0 1 ITEM1
我需要检索id(0,1,...)和名称(item0,item1,...)并生成带有数据的XAML:
例如,将该名称(item0,item1,...)作为TextBlock的标题插入(而不是在下一个XAML中使用“______”):
<TextBlock x:name="title" Title="______">
我想这很容易,但我看不到: - )
什么是好方法?可以通过使用XSLT将XML转换为XAML来完成吗?
还有其他建议吗?
答案 0 :(得分:2)
根据您的评论确定我觉得您需要坐下来阅读一些Silverlight演示/文档:)
您所描述的是Silverlight中的基本功能:模板化列表和数据绑定。
例如,您可以像这样定义ListBox:
<ListBox ItemsSource="{Binding MyList}">
<ListBox.ItemTemplate>
<DataTemplate>
<TextBlock Text="{Binding MyTextProperty}"/>
</DataTemplate>
</ListBox.ItemTemplate>
</ListBox>
MyList可以位于ViewModel属性中(或者您可以分配给DataContext的任何其他集合)。 然后,Silverlight将复制每个项目的模板,将每个副本的DataContext分配给下一个项目。
开始学习这种技术的好地方是a tutorial from Scott Gu。