簡體   English   中英

數據綁定到具有最后一個元素的不同行為的集合

[英]Data binding to a collection with different behavior for the last element

這似乎是一個常見的問題,但我的Google-Fu讓我空洞無息。 如果以前曾被問過一千次,我會道歉!

我有一個集合,比如ObservableCollection<Athlete> 我想在屏幕上顯示該集合,使其看起來像:

[澤西島照片] | [澤西島照片] | [澤西島照片] | [澤西圖片]

這個人為設想的例子中的關鍵是每張照片之間的小條。 減去該條,它只是一個綁定到集合的ListBox ,其中ItemsPanelTemplate為水平StackPanel ,然后是ItemTemplate以顯示每個項目的相應澤西圖片。 沒問題!

那么問題是,除了集合中的最后一個元素之外,如何追加可能是任何圖形元素的條形圖?

謝謝!

正如@KornMuffin鏈接中所建議的那樣,您可以將欄放在ListBox項的左側:

| [澤西島照片] | [澤西島照片] | [澤西島照片] | [澤西圖片]

然后使用帶有{RelativeSource PreviousData}綁定的DataTrigger ,如果以前的數據為空,則隱藏第一個條。 例如,假設我使用Separator來顯示條形圖,我可以將此樣式添加到分隔符控件以隱藏第一個分隔符:

<Separator.Style>
    <Style TargetType="Separator">
        <Style.Triggers>
            <DataTrigger Binding="{Binding RelativeSource={RelativeSource PreviousData}}" Value="{x:Null}">
                <Setter Property="Visibility" Value="Collapsed"/>
            </DataTrigger>
        </Style.Triggers>
    </Style>
</Separator.Style>

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM