ListView样式

本文介绍了如何自定义WPF ListView的样式,包括不显示水平滚动条、设置项的背景颜色、选中效果以及标题栏的特殊样式。通过修改ItemContainerStyle和GridViewColumnHeader的Style,实现列表项和标题的视觉差异化。同时,讨论了滚动条的默认样式以及如何自定义滚动条以匹配整体风格。
摘要由CSDN通过智能技术生成

ListView样式

        ListView的模板可以分为三个部分:标题栏部分,内容项和滚动条。其中,滚动条不一定一直可见。默认情况下,滚动条的可见性为Auto。也就是说,只有列表中的项多到容器中装不下时,才会在右侧或者下部自动显示出滚动条来,供用户查看容器范围外的项。这里,我们编写的模板设置了不显示水平滚动条,也就是说只有垂直方向的项多出来才会在列表右侧增加滚动条。这也是一般列表最常见的滚动条形式。在这个样式中,滚动条不需要自己写,系统会自动为你应用默认的滚动条。

    此外,当我们想要改变一个列表的外观时,通常不需要把整个列表模板重写。需要编写的部分主要为ItemContainerStyle列表项容器和GridViewColumnHeader标题容器。为了美观,可以将项的背景颜色设置为各行为不同颜色。点击选中时,被选中的项内容文字放大,背景变成鲜明的橙色。上述样式在ItemContainerStyle中修改。代码如下所示:

<Style x:Key="listview" TargetType="{x:Type ListView}">
            <Setter Property="TextBlock.TextAlignment" Value="Center"/>
            <Setter Property="Margin" Value="5"/>
            <Setter Property="Background" Value="transparent"/>
            <Setter Property="Foreground" Value="#FF282828"/>
            <Setter Property="BorderThickness" Value="0"/>
            <Setter Property="SelectionMode" Value="Single"/>
            <Setter Property="VerticalContentAlignment" Value="Center"/>
            <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Disabled"/>
            <Setter Property="ScrollViewer.CanContentScroll" Value="True"/>
            <Setter Property="AlternationCount" Value="2"/>
            <!--ListViewItem模板-->
            <Setter Property="ItemContainerStyle">
                <Setter.Value>
                    <Style TargetType="{x:Type ListViewItem}">
                        <Setter Property="Height" Value="60"/>
                        <Setter Property="FontSize" Value="20"/>
                        <Setter Property="Background" Value="#fff"/>
                        <Setter Property="BorderBrush" Value="transparent"/>
                        <Setter Property="BorderThickness" Value="0"/>
                        <Setter Property="HorizontalContentAlignment" Value="Center"/>
                        <Setter Property="VerticalContentAlignment" Value="Center"/>
                        <Setter Property="Template">
                            <Setter.Value>
                                <ControlTemplate TargetType="{x:Type ListViewItem}">
                                    <Border
在Delphi中,ListView控件提供了多种样式供开发者选择和定制。以下是一些常见的Delphi ListView样式: 1. ViewStyle属性:ListView的ViewStyle属性决定了列表项的显示方式,可以设置为以下几种值: - vsIcon:以图标的形式显示列表项。 - vsSmallIcon:以小图标的形式显示列表项。 - vsList:以列表的形式显示列表项。 - vsReport:以报表的形式显示列表项,可以自定义显示的列。 2. Columns属性:当ViewStyle属性设置为vsReport时,可以使用Columns属性定义列表的列。每个列可以设置标题、宽度、对齐方式等。 3. Images属性:ListView的Images属性用于设置列表项中显示的图标集合。可以使用TImageList控件来管理图标,并将其赋值给Images属性。 4. OnCustomDrawItem事件:通过处理OnCustomDrawItem事件,可以自定义列表项的绘制方式。开发者可以自行绘制文字、图标以及背景等。 5. OnCustomDrawSubItem事件:类似于OnCustomDrawItem事件,通过处理OnCustomDrawSubItem事件,可以自定义子项(SubItem)的绘制方式。 6. GroupView属性:当需要在ListView中分组显示列表项时,可以将GroupView属性设置为True,并使用Groups属性添加和管理分组。 7. CheckBoxes属性:当需要在列表项中显示复选框,以进行多选操作时,可以将CheckBoxes属性设置为True。通过处理OnItemChecked事件,可以响应复选框状态的改变。 8. HotTrack属性:将HotTrack属性设置为True时,鼠标悬停在列表项上时会有高亮效果。 这些是一些常用的Delphi ListView样式,你可以根据具体需求和设计要求,选择和定制适合的样式来呈现ListView控件的外观和交互效果。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值