【问题标题】:How to delete items from a list in Windows Phone 8?如何从 Windows Phone 8 的列表中删除项目?
【发布时间】:2013-12-09 04:32:23
【问题描述】:

我创建了一个应用程序。该应用中的一项功能是制作列表并保存到独立存储。

直言不讳,我的问题是从列表中删除项目。为了澄清,应用程序的用户可以将项目添加到列表中,然后将其保存。我也在使用从网上下载的 LongListMultiSelector。这里发生的是您可以在弹出的特殊框中检查项目(LongListMultiSelector 功能)。到目前为止,每个功能都运行良好。我希望用户能够检查复选框,然后按下删除按钮,就像 Windows Phone Hotmail 一样,然后摆脱它们。这是我遇到麻烦的部分。

所以我点击了应该用作删除按钮的垃圾桶按钮。我有以下代码。

 private void button3_Click(object sender, EventArgs e)
    {
        while (LLMS.SelectedItems.Count > 0)
        {
            source.Remove((MainList)LLMS.SelectedItems[0]);
            InitializeComponent();

        }
    }

LLMS 代表 LongListMultiSelector。 MainList 是类和列表。

发生的情况是应用程序冻结并停止工作,但没有弹出窗口。

【问题讨论】:

  • 你目前有什么?显示一些代码,以便我们可以根据您已有的内容为您提供解决方案。您的问题有很多解决方案:)

标签: windows windows-phone-7 windows-phone-8 windows-phone


【解决方案1】:

你可以使用这行代码:

    void OnRemoveClick(object sender, EventArgs e)
    {
        IList source = MainList.ItemsSource as IList;

        while (MainList.SelectedItems.Count > 0)
        {
            source.Remove((**ObjectName**)MainList.SelectedItems[0]);
        }
    }

【讨论】:

  • 抱歉,我是个初学者,想问一下什么是 IList?
  • IList 表示可以通过索引单独访问的非泛型对象集合。 More information
  • 我的意思是,它总是有一个红色下划线,我猜是因为我从未使用过它。
  • 将此行 using System.Collections; 添加到班级
  • IList 是多个集合/列表实现的接口 (msdn.microsoft.com/library/…)。要摆脱“红色下划线”(这可能表明它找不到相应的引用),您必须向 System.Collections 添加 using 指令。例如:using System.Collections;
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-04-10
  • 1970-01-01
  • 2021-07-19
相关资源
最近更新 更多