WP8 LongListSelector - 重新分配 ItemsSource 无效

2024-03-17

我正在使用新的 Windows Phone 8LongListSelector控制,它有其ItemsControl分配给一个List<Group<object>> as so:

    List<Group<PlacePoint>> searchResults; 

    async void doSearch()
    {
        this.searchResults = await SearchHelper.Instance.getSearchResults(txtSearchTerm.Text);
        longList.ItemsSource = this.searchResults;
    }

不幸的是,我第二次搜索时,重新设置 .ItemsSource 属性没有效果,控件仅显示旧列表。

如何更改绑定?


看来重新分配 longList.ItemsSource 没有任何效果,我不能说这是一个错误还是设计使然。

然而,一个简单的解决方法是使用 ObservableCollection> 来代替,然后使用该集合而不是重新分配 ItemsSource。

示例代码:

    ObservableCollection<Group<PlacePoint>> searchResults = new ObservableCollection<Group<PlacePoint>>();


    public SearchPage()
    {
        InitializeComponent();

        longList.ItemsSource = this.searchResults;
    }

    async void doSearch()
    {
        List<Group<PlacePoint>> tempResults = await SearchHelper.Instance.getSearchResults(txtSearchTerm.Text);

        // Clear existing collection and re-add new results
        this.searchResults.Clear();
        foreach (Group<PlacePoint> grp in tempResults )
        {
            this.searchResults.Add(grp);
        }
    }
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

WP8 LongListSelector - 重新分配 ItemsSource 无效 的相关文章

随机推荐