隐藏ItemsControl中的最后一项

时间:2015-01-19 20:10:46

标签: c# wpf xaml itemscontrol

我有一个ItemsControl,它绑定到我的viewmodel,但在datatemplate中我也有一个图像。我希望该图像可见,只要它不是列表中的最后一项,那么它应该被隐藏(它是指向下一个控件的箭头)。

xaml看起来像这样:

<ItemsControl ItemsSource="{Binding PageContainers}" x:Name="Items">
    <ItemsControl.ItemTemplate>
        <DataTemplate>
            <StackPanel>
                <controls:DesignControl DataContext="{Binding}" MouseDown="UIElement_OnMouseDown" MouseUp="UIElement_OnMouseUp" MouseMove="UIElement_OnMouseMove"/>
                <Image Source="/Resources/Images/arrow.png" Height="16" Width="16" Margin="0,10,0,0"/>
            </StackPanel>
        </DataTemplate>
    </ItemsControl.ItemTemplate>
</ItemsControl>

那么有没有容易检查Image / Stackpanel是否在列表的最后?我想我可以订阅一些事件并在后面的代码中执行,但我想如果我可以在xaml中执行它,它会更清晰。

1 个答案:

答案 0 :(得分:1)

你绑定到我认为是集合的PageContainers。可以将该集合的类型扩展为包含IsLast属性吗?

如果可以,您可以将可见性绑定到该。