【问题标题】:First item custom style border in ListViewListView 中的第一项自定义样式边框
【发布时间】:2018-03-19 11:00:21
【问题描述】:

如何为 ListView 中的第一项设置不同的样式?就我而言,我想更改第一个项目的边框,以获得这样的 GUI:

我当前的代码(没有上边框):

<ListView 
    ItemsSource="{Binding MyData}">
    <ListView.ItemContainerStyle>
        <Setter Property="BorderThickness" Value="0,0,0,1" />
    </ListView.ItemContainerStyle>
</ListView>

【问题讨论】:

    标签: wpf xaml listview itemcontainerstyle


    【解决方案1】:

    有一个非常简单的解决方案。您不必编写自定义转换器等。使用PreviousData in RelativeSource

    <ListView.ItemContainerStyle>
        <Style TargetType="{x:Type ListBoxItem}">
            <Setter Property="BorderThickness" Value="0,0,0,1" />
            <Style.Triggers>
                <DataTrigger 
                    Binding="{Binding RelativeSource={RelativeSource PreviousData}}" Value="{x:Null}">
                    <Setter Property="BorderThickness" Value="0,1,0,1"/>
                </DataTrigger>
            </Style.Triggers>
        </Style>
    </ListView.ItemContainerStyle>
    

    【讨论】:

    • 您也应该知道,如果您要使用度假村列表,它是行不通的
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-02-27
    • 1970-01-01
    • 2010-09-26
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多