【发布时间】:2016-01-18 02:45:53
【问题描述】:
我正在尝试让 Xamarin Forms 在列表中显示一个列表。我见过其他人说不支持嵌套在 ListView 中的 ListView。我尝试在 ListView 中添加一个控件,并将嵌套列表绑定到该控件,但是每当我尝试绑定到它时,我的应用程序总是崩溃。
我还发现有些人建议使用分组。分组确实有效,但是我发现的问题是我无法点击分组部分。此外,分组不会实时更新(这是一项要求)。
对于最终结果,我想要一些简单的东西:
- 公寓名称1
- 地址
- 经理电话号码
- 租户 1,电话号码
- 租户 2,电话号码
- 租户 3,电话号码
- 公寓名称2
- 地址
- 经理电话号码
- 租户 1,电话号码
- 租户 2,电话号码
- 租户 3,电话号码
下面是我想在我的 Xamarin Forms 项目中显示的示例对象。
public class Apartment
{
public string ApartmentName { get; set; }
public string Address { get; set; }
public string ManagerPhoneNumber { get; set; }
public List<Tenant> Tenants { get; set; }
}
public class Tenant
{
public string FullName { get; set; }
public string PhoneNumber { get; set; }
public DateTime ContractExpireDate { get; set; }
}
这是我尝试开始工作的 Xaml
<ContentView>
<StackLayout>
<ListView x:Name="apartmentListView" HasUnevenRows="True">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<ViewCell.View>
<StackLayout VerticalOptions="StartAndExpand">
<StackLayout Orientation="Horizontal" BackgroundColor="Gray">
<Label HorizontalOptions="StartAndExpand" Text="{Binding ApartmentName}" />
<Label HorizontalOptions="End" Text="{Binding Address}" />
</StackLayout>
<Label Text="{Binding ManagerPhoneNumber}" />
<control:TenantViewTemplate Tenants="{Binding Tenants}" />
</StackLayout>
</ViewCell.View>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</StackLayout>
</ContentView>
我只是想显示一个列表,其中包含一个列表。我愿意接受有关如何通过 Xamarin 表单执行此操作的任何建议。
【问题讨论】:
标签: c# android xamarin xamarin.forms