【问题标题】:Windows Phone 7 Listbox selection data bindingWindows Phone 7 列表框选择数据绑定
【发布时间】:2012-05-30 06:54:58
【问题描述】:

我使用this tutorial 作为我的第一个应用程序的基础。我正在尝试选择一个列表框项并从该项中查看数据,但是(我的 Android 和 iOS 大脑对此有疑问),我如何查看其背后的数据绑定?

lstContact.ItemsSource = from contact in xmlContact.Descendants("contact")
                                 select new ContactItem
                                 {
                                     ImageSource = contact.Element("Image").Value,
                                     FName = contact.Element("FName").Value,
                                     LName = contact.Element("LName").Value
                                     Extension = contact.Element("Extension").Value,
                                     Email = contact.Element("Email").Value,
                                     ID = contact.Element("ID").Value
                                 };

这就是我设置数据源的方式,并且可以正确提取。我将如何进入并从所述列表框项目中获取电子邮件或扩展名?

【问题讨论】:

  • lstContact.ItemsSource 现在实际上是一个 IEnumerable。假设您想要一个“选定”项目,您在听 SelectionChanged 吗?
  • 如果(lstContact.SelectedIndex == -1)返回; var contactItem = (ContactItem)lstContact.SelectedItem; /*做某事*/ lstContact.SelectedIndex = -1;
  • 效果很好!介意将其粘贴在答案中,以便我可以接受它作为答案吗?

标签: windows-phone-7 data-binding listbox listboxitem


【解决方案1】:

在您的示例中,lstContact.ItemsSource 现在实际上是 IEnumerable<ContactItem>。假设您想要一个“选定”项目,在您的 SelectionChanged 事件中:

public void ListBoxContainerSelectionChanged(object sender, SelectionChangedEventArgs e)
        {
            if (lstContact.SelectedIndex == -1) return; 
            ContactItem contactItem = (ContactItem)lstContact.SelectedItem; 
            /*do something */ 
            lstContact.SelectedIndex = -1;
}

【讨论】:

    猜你喜欢
    • 2014-08-30
    • 2012-09-11
    • 2011-10-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-17
    相关资源
    最近更新 更多