子列表未绑定到 xamarin 表单中的 ListView 分组
Posted
技术标签:
【中文标题】子列表未绑定到 xamarin 表单中的 ListView 分组【英文标题】:Sub list is not binding to ListView grouping in xamarin forms 【发布时间】:2021-10-26 11:36:22 【问题描述】:我正在 xamarin 表单中实现列表视图分组,以在列表视图中显示列表。我需要在标题下显示一个标题和一个列表。
型号:
public class ActivityHistoryDetails
public string EventDate get; set;
public List<History> History get; set;
我正在将“ActivityHistoryDetails”类型的列表绑定到列表视图。
现在我可以只显示带有此代码的标题。子列表不具有约束力。
【问题讨论】:
【参考方案1】:有需要的可以参考这个link。
根据你的代码,我写了一个可运行的,最小化的例子供你参考,你可以参考它来修改你的代码。
这是History
类:
public class History
public string ZoneId get; set;
public string ZoneComment get; set;
public string EventRptId get; set;
public string EventDate get; set;
public string EventTime get; set;
public string EventDescription get; set;
public int StoreId get; set;
public History(string zoneId, string zoneComment, string eventRptId, string eventDate, string eventTime, string eventDescription, int storeId)
ZoneId = zoneId;
ZoneComment = zoneComment;
EventRptId = eventRptId;
EventDate = eventDate;
EventTime = eventTime;
EventDescription = eventDescription;
StoreId = storeId;
这是ActivityHistoryDetails
类:
public class ActivityHistoryDetails : List<History>
public string EventDate get; set;
public static IList<ActivityHistoryDetails> All private set; get;
public ActivityHistoryDetails(string EventDate)
this.EventDate = EventDate;
static ActivityHistoryDetails()
List<ActivityHistoryDetails> Groups = new List<ActivityHistoryDetails>
new ActivityHistoryDetails ("aaa")
new History("test","test","test","test","test","test",1),
new History("test1","test1","test1","test1","test1","test1",2)
,
new ActivityHistoryDetails ("bbb")
new History("test2","test2","test2","test2","test2","test2",3),
new History("test3","test3","test3","test3","test3","test3",4)
;
All = Groups;
使用GroupedView.ItemsSource = ActivityHistoryDetails.All;
进行数据绑定。
xaml 代码与您提供的代码相同。
截图如下:
【讨论】:
只要是列表,不一定是静态的。 根据你的代码,你的 res 是 List 吗? 那我们需要绑定List,然后就可以直接绑定xaml了。 你可以看看我的代码。我根据您的代码对其进行了调整,即使 xaml 也没有对其进行修改。截图中的“aaa”和“bbb”是分组,对应“EventDate” 根据我的代码,Groups是多个ActivityHistoryDetails数据,ActivityHistoryDetails中的EventDate是动态数组的头部。您甚至可以完全复制我的代码,只需正确添加 Groups 的值即可绑定动态数组。以上是关于子列表未绑定到 xamarin 表单中的 ListView 分组的主要内容,如果未能解决你的问题,请参考以下文章
Xamarin Forms Switch Toggled 事件未与视图模型绑定