最后一个 StackLayout 项目丢失或被剪切
Last StackLayout Item is missing or cut
我正在用一个 ListView
创建 xamarin.forms 页面。
每个列表项模板由一个垂直 StackLayout
组成,其中包含 3 个 StackLayout
。问题是:我只能看到前两个堆栈布局
第三个被隐藏或剪切或跳过,我不知道,我看不到它。
<ContentPage.Content>
<ListView x:Name="RoutesList" ItemsSource="{Binding Routes}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout BackgroundColor="#eee" Orientation="Vertical" Padding="5,0,0,5" VerticalOptions="FillAndExpand">
<StackLayout Orientation="Horizontal" VerticalOptions="StartAndExpand">
<Label Text="{Binding Name}" FontAttributes="Bold"></Label>
<Label Text="{Binding StartDate}" HorizontalOptions="EndAndExpand"></Label>
</StackLayout>
<StackLayout Orientation="Horizontal" BackgroundColor="#f94" >
<Label Text="{Binding RouteType}" FontAttributes="Bold"></Label>
</StackLayout>
<StackLayout Orientation="Horizontal" VerticalOptions="EndAndExpand">
<Label Text="{Binding CreatorFirstName}" FontAttributes="Bold" HorizontalOptions="EndAndExpand"></Label>
<Label Text="{Binding CreatorLastName}" FontAttributes="Bold" HorizontalOptions="End"></Label>
</StackLayout>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</ContentPage.Content>
如何正确设置布局属性以便所有堆栈布局及其项目内容都适合?所有绑定属性都是常规的 strings\dates。我知道有 GridLayout
但我想知道如何使用 StackLayouts
?
您需要将 ListView
的 RowHeight
属性 设置为显示所有项目的内容。或者,您可以将 HasUnevenRows
设置为 true,但这是一个明显较慢的选项。
我正在用一个 ListView
创建 xamarin.forms 页面。
每个列表项模板由一个垂直 StackLayout
组成,其中包含 3 个 StackLayout
。问题是:我只能看到前两个堆栈布局
第三个被隐藏或剪切或跳过,我不知道,我看不到它。
<ContentPage.Content>
<ListView x:Name="RoutesList" ItemsSource="{Binding Routes}">
<ListView.ItemTemplate>
<DataTemplate>
<ViewCell>
<StackLayout BackgroundColor="#eee" Orientation="Vertical" Padding="5,0,0,5" VerticalOptions="FillAndExpand">
<StackLayout Orientation="Horizontal" VerticalOptions="StartAndExpand">
<Label Text="{Binding Name}" FontAttributes="Bold"></Label>
<Label Text="{Binding StartDate}" HorizontalOptions="EndAndExpand"></Label>
</StackLayout>
<StackLayout Orientation="Horizontal" BackgroundColor="#f94" >
<Label Text="{Binding RouteType}" FontAttributes="Bold"></Label>
</StackLayout>
<StackLayout Orientation="Horizontal" VerticalOptions="EndAndExpand">
<Label Text="{Binding CreatorFirstName}" FontAttributes="Bold" HorizontalOptions="EndAndExpand"></Label>
<Label Text="{Binding CreatorLastName}" FontAttributes="Bold" HorizontalOptions="End"></Label>
</StackLayout>
</StackLayout>
</ViewCell>
</DataTemplate>
</ListView.ItemTemplate>
</ListView>
</ContentPage.Content>
如何正确设置布局属性以便所有堆栈布局及其项目内容都适合?所有绑定属性都是常规的 strings\dates。我知道有 GridLayout
但我想知道如何使用 StackLayouts
?
您需要将 ListView
的 RowHeight
属性 设置为显示所有项目的内容。或者,您可以将 HasUnevenRows
设置为 true,但这是一个明显较慢的选项。