C# 在WinRT中从ListView获取所选项目信息
我有以下代码,可以从Flickr中弹出一个带有照片的列表视图C# 在WinRT中从ListView获取所选项目信息,c#,listview,windows-runtime,C#,Listview,Windows Runtime,我有以下代码,可以从Flickr中弹出一个带有照片的列表视图 private async void ParseFlickrResponse(HttpResponseMessage response) { XDocument xml = XDocument.Parse(await response.Content.ReadAsStringAsync()); var photos = from results in xml.Descend
private async void ParseFlickrResponse(HttpResponseMessage response)
{
XDocument xml = XDocument.Parse(await response.Content.ReadAsStringAsync());
var photos = from results in xml.Descendants("photo")
select new FlickrImage
{
ImageId = results.Attribute("id").Value.ToString(),
FarmId = results.Attribute("farm").Value.ToString(),
ServerId = results.Attribute("server").Value.ToString(),
Secret = results.Attribute("secret").Value.ToString(),
Title = results.Attribute("title").Value.ToString()
};
FlickrListView.ItemsSource = photos;
}
我希望能够从这个ListView中获取单个项目的源数据,以便在其他地方使用。然而,我似乎无法通过一些命令取得任何进展。我对C#已经足够陌生了,我不知道是否应该使用SelectedItems、Items或SelectedIndex方法来查找我的照片存储在哪个节点
任何帮助都会很好。您可以使用以下代码: 编辑:使用
SelectedItems
Dictionary<string, List<string>> dict =
FlickrListView.SelectedItems
.Cast<ListViewItem>()
.ToDictionary(
item => item.Text,
item => item.SubItems
.Cast<ListViewItem.ListViewSubItem>()
.Select(subItem => subItem.Text)
.ToList());
这是正确的,但我仍然需要能够获得我在UI中选择的项目的索引。因此,我有一个照片列表,用户单击第三张照片,我需要获取第三张照片的索引。只是想知道使用“FlickrListView.ItemsSource=photos;”来定义我的列表视图是否有效
foreach (var item in FlickrListView.SelectedItems)
{
FlickrImage obj = (FlickrImage) item;
// ... do something ...
}