更新清单 数据Xamarin / C#

问题描述 投票:0回答:1

我有通过点击打开的表格。在这里,我将用户数据添加到我的SelectMultipleBasePage

async void OnClick(object sender, EventArgs ea)
        {
ListofUsers = new ObservableCollection<Models.Users>();
var items = await App.Database.User.GetItemsAsync();

            foreach (var user in items)   
            {
                Settings.userList.Add(user);
            }
     multiPage = new SelectMultipleBasePage<Users>(items.OrderBy(x => x.Title).ToList())
{ Title = Users }
     await Navigation.PushAsync(multiPage);
        }

SelectMultipleBasePage内容页面如下所示:

public class SelectMultipleBasePage<T> : ContentPage
        {

            public class WrappedSelection<T> : INotifyPropertyChanged
            {
                public T Item { get; set; }              
            }
            public class WrappedItemSelectionTemplate : ViewCell
            {
                public WrappedItemSelectionTemplate() : base()
                {
                   Label Title = new Label() 
                   //and other fields
                  View = grid;                   
                }
            }
            public List<WrappedSelection<T>> WrappedItems = new List<WrappedSelection<T>>();

这里是与SelectMultipleBasePageWrappedItems,我正在努力刷新以获取新数据。

 public SelectMultipleBasePage(List<T> items)
            {                    
                WrappedItems = items.Select(item => new WrappedSelection<T>() { Item = item, IsSelected = false }).ToList();
                ListView mainList = new ListView()
                {
                    ItemsSource = WrappedItems,
                    ItemTemplate = new DataTemplate(typeof(WrappedItemSelectionTemplate)),
                    IsPullToRefreshEnabled = true,
                };

如何正确地使用wrappeditems在我的页面上添加或清除项目。没有mainlist.Itemsource.Addmainlist.Itemsource.Clear命令。我尝试了不同的方法,但没有结果。希望得到一些建议。

 mainList.Refreshing += (sender, e) => {
                //...
            };
c# xamarin xamarin.forms
1个回答
1
投票

您需要更新集合并重新分配到ItemsSource属性或使用数据绑定。

在后一种情况下,您将需要使用ObservableCollection<T>。每当更新集合时,它都会相应地自动更新ListView

© www.soinside.com 2019 - 2024. All rights reserved.