我正在尝试做一些将执行“全选”功能的代码。为了实现这一点,我在后面的代码中尝试将所有列表对象手动添加到LongListMultiSelector的SelectedItems中。

但是问题是,当我执行此操作时,列表会增加两个项目,它们的信息相同。我尝试使用SelectedItems.Add(...),SelectedItems.Insert(...)无济于事。

我还尝试过使用SelectedItems.Remove(...),SelectedItems.RemoveAt(...)立即从列表中删除其中一项,无论我实际上删除了哪一项,它们实际上都将删除这两项。

最后,我尝试将其中一项更改为NULL。这实际上删除了列表中的一项,但随后将其余项更改为空对象本身。
我是否以正确的方式使用了SelectAll功能?我想达到的目标还有更好的选择吗?是否可以继续我的工作并解决此重复问题?

最佳答案

这对我有用,没有添加重复项:

private void OnSelectAllClick(object sender, EventArgs e)
    {
        LongListMultiSelectorName.SelectedItems.Clear();
        foreach (var item in LongListMultiSelectorName.ItemsSource)
        {
            LongListMultiSelectorName.SelectedItems.Add(item);
        }
    }

关于c# - LongListMultiSelector添加到所选项目中会添加2个项目,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/15076771/

10-13 06:44