我在C#中有一个列表,我想使用listview分组在xaml中绑定该列表
需要帮助绑定xaml中的列表列表 我已经尝试使用嵌套的Listview实现同样的功能,但这会使我的应用程序在滚动时崩溃。我猜这不是个好主意 这是我的父模型类:我在C#中有一个列表,我想使用listview分组在xaml中绑定该列表,c#,xaml,xamarin,xamarin.forms,C#,Xaml,Xamarin,Xamarin.forms,需要帮助绑定xaml中的列表列表 我已经尝试使用嵌套的Listview实现同样的功能,但这会使我的应用程序在滚动时崩溃。我猜这不是个好主意 这是我的父模型类: public class Parent { public string Id { get; set; } public string Name { get; set; } public List<Child> ChildList { get; set; } } 视图模型: public Obse
public class Parent
{
public string Id { get; set; }
public string Name { get; set; }
public List<Child> ChildList { get; set; }
}
视图模型:
public ObservableCollection< Parent > MyList = new ObservableCollection< Parent >();
使用listview分组可以实现同样的效果吗?如果是这样,请有人帮助我实现,因为我无法正确分组数据。我认为您可能需要重新审视您的设计。如果我个人想做一些事情,比如我理解你想做的事情,我会用这两种方法中的一种来处理 第一种方式,我将从父母的列表视图开始。然后,我将处理单击/点击事件(取决于您选择的平台),在主页上打开第二个较小的listview,显示单击/点击的父级的子级。单击/点击屏幕上除子listview之外的任何位置都可以将其放在一边 我可以想到的第二种方法是简单地向listview添加一个父级,然后添加它的所有子级。请列出以下内容:
void FillParentListView(List<Parent> parents)
{
foreach(Parent p in parents)
{
listview.Items.Add(p);
foreach(Child c in p.ChildList)
listview.Items.Add(c);
}
}
void FillParentListView(列出父对象)
{
foreach(父级中的父级p)
{
listview.Items.Add(p);
foreach(p.ChildList中的子c)
listview.Items.Add(c);
}
}
第二个选项的缺点是,您可能需要创建不同的单元格设计,以便于区分父项和子项,并且您需要在每次从listview读取信息时尝试强制转换,以查看所选内容。listview本机支持分组。请看一下。我猜你每天都会学到新东西。
Name1
-ChildName1
-ChildName2
-ChildName3
Name2
-ChildName1
-ChildName2
void FillParentListView(List<Parent> parents)
{
foreach(Parent p in parents)
{
listview.Items.Add(p);
foreach(Child c in p.ChildList)
listview.Items.Add(c);
}
}