【发布时间】:2021-12-05 03:17:36
【问题描述】:
我正在使用可绑定布局来显示项目列表。项目绑定到键值对的 ObservableRangeCollection
public ObservableRangeCollection<KeyValuePair<string, string>> Items { get; set; }
这是呈现项目的布局——每一行都使用 BoxView 由一行分隔:
<StackLayout BackgroundColor="Transparent" BindableLayout.ItemsSource="{Binding Items}" Padding="20">
<BindableLayout.ItemTemplate>
<DataTemplate>
<Grid>
<Grid.ColumnDefinitions>
<ColumnDefinition Width="*" />
<ColumnDefinition Width="Auto" />
</Grid.ColumnDefinitions>
<Grid.RowDefinitions>
<RowDefinition Height="Auto" />
<RowDefinition Height="1" />
</Grid.RowDefinitions>
<Label Grid.Column="0"
Grid.Row="0"
Text="{Binding Key}"/>
<Label Grid.Column="1"
Grid.Row="0"
HorizontalOptions="End"
HorizontalTextAlignment="End"
Text="{Binding Value}"/>
<BoxView Grid.Column="0"
Grid.Row="1"
Grid.ColumnSpan="2"
HeightRequest="1" />
</Grid>
</DataTemplate>
</BindableLayout.ItemTemplate>
</StackLayout>
问题是列表末尾有一个额外的行,我希望在呈现可观察集合中的最后一个元素后隐藏它。
我需要确定最后一项是否在 BindableLayout 上呈现,并将 BoxView 的 IsVisible 属性设置为 false,但我不确定如何使用 XAML 执行此操作。
【问题讨论】:
标签: xamarin xamarin.forms