0
我正在开发我的第一个Windows 8应用程序。我试图显示一个填充了图像和图像描述的GridView。我想从我创建的XML文件中获取数据。我发现GridView的ItemSource属性,我尝试绑定我的XML文件,但我无法做到这一点。如何在Windows中使用xml解析在GridView中绑定图像metro app
请告诉我正确的方式来完成这项任务。 thanx
我正在开发我的第一个Windows 8应用程序。我试图显示一个填充了图像和图像描述的GridView。我想从我创建的XML文件中获取数据。我发现GridView的ItemSource属性,我尝试绑定我的XML文件,但我无法做到这一点。如何在Windows中使用xml解析在GridView中绑定图像metro app
请告诉我正确的方式来完成这项任务。 thanx
您无法直接将XML文件绑定到GridView.ItemsSource
,您需要首先将其解析为对象。我想创建一个类在GridView
显示所有数据:
public class GridViewItem
{
public string Description { get; set; }
public ImageSource Image { get; set; }
}
下一步是将XML文件解析成的GridViewItem
个清单:
var xmlString = await FileIO.ReadTextAsync(storageFile);
var xml = XDocument.Parse(xmlString);
var Items = xml.Element("rootNode").Elements("itemNode").Select(i => new GridViewItem
{
Description = (string)i.Element("descriptionNode"),
Image = ParseImage(i.Element("imageNode"))
}).ToList();
我都一直假设XML中的标签是rootNode
,itemNode
,descriptionNode
和imageNode
。我也不知道你的图像数据是如何存储在XML中的。将其转换为ImageSource
的逻辑应该位于ParseImage()
。
剩下的唯一的事情就是分配Items
列表上方的财产在您的视图模型作为您DataContext
并将其绑定到ItemsSource
:
<GridView ItemsSource="{Binding Items}" />
这是基本的想法。我的答案中有很多细节遗漏,但最好我可以根据你的问题来做。
我们需要更多的信息来帮助你。你有什么尝试?什么不工作?你的XML是什么样的? – ZombieSheep 2013-02-12 10:52:38