【发布时间】:2019-12-28 13:42:25
【问题描述】:
我正在尝试隐藏最后一个 Grid 列。我正在尝试使用 DataTrigger 来实现,这就是我的触发器的样子:
<ResourceDictionary>
<Style x:Key="HideLastVerticalLine" TargetType="BoxView">
<Style.Triggers>
<DataTrigger
Binding="{Binding Items, Path=Items.LastOrDefault}"
TargetType="BoxView"
Value="{Binding Items.Length}">
<Setter Property="IsVisible" Value="False" />
</DataTrigger>
</Style.Triggers>
</Style>
</ResourceDictionary>
<BoxView Style="{StaticResource HideLastVerticalLine}" Grid.Column="1" HeightRequest="100" WidthRequest="1" BackgroundColor="Black"/>
我将此 DataTrigger 应用于 BoxView,其中包含一个垂直行分隔符(我想要 Trim() 之类的东西,只是为了删除最后一个分隔线。
我该怎么做?
【问题讨论】:
-
你能贴一张你想要完成的图片和完整的代码吗?你想隐藏一整列还是只隐藏一个boxview?
-
Items.LastOrDefault 是一个方法,所以绑定不起作用。
-
所以我有一个 DataTemplate 为列表中的每个项目创建 2 列。第一列将是一个列表视图,第二列将是分隔符垂直线。我想隐藏最后一项的第二列(为了不在最后一项上显示垂直分隔线)
标签: xaml xamarin.forms datatrigger