[英]xamarin forms group listview checkboxs
复选框在列表视图中生成。 复选框的状态需要存储在本地存储中。 有没有办法将两个单独的列表绑定到一个 Listview 中。
第一个列表:
List<mergedfeature> mergedfeatures = new List<mergedfeature>();
var res = (from layer in layers
join cat in category
on layer.feature_cat equals cat.id
select new
{
name = cat.category_name,
Mfeatures = layer,
isChecked = true
}).ToList();
Second List:
public int id { get; set; }
public string layer_name { get; set; }
public bool LayerChecked { get; set;}
public string group_name { get; set;}
有没有办法将两个单独的列表绑定到一个 Listview 中。
第二个列表是否嵌套在第一个列表中? 如果是,您可以使用BindableLayout在另一个 Listview 中显示项目集合。
您可以在BindableLayout.ItemsSource
中绑定内部列表。
您可以参考我的演示中的以下代码:
<ListView x:Name="lstView" RowHeight="60">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout Orientation="Horizontal" HorizontalOptions="Fill" BackgroundColor="Olive">
<StackLayout Orientation="Vertical">
<Label Text = "{Binding Name}" FontSize="24" AbsoluteLayout.LayoutBounds="0.25, 0.25, 400, 40"/>
<Label Text = "{Binding Type}" AbsoluteLayout.LayoutBounds="50, 35, 200, 25"/>
</StackLayout>
<Image Source="{Binding Image}" HorizontalOptions="End" AbsoluteLayout.LayoutBounds="250.25, 0.25, 50, 50 "/>
<StackLayout BindableLayout.ItemsSource="{Binding Inner_Items}" Orientation="Horizontal">
<BindableLayout.ItemTemplate>
<DataTemplate>
<StackLayout Orientation="Horizontal">
<Label Text="{Binding layer_name}"/>
<CheckBox IsChecked="{Binding LayerChecked}"/>
</StackLayout>
</DataTemplate>
</BindableLayout.ItemTemplate>
</StackLayout>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.