WPF Listview 设置滚条宽度

选中控制右键-编辑模板-编辑副本

 <Window x:Class="WpfApplication1.ListBoxDemo"
        xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
        xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
        xmlns:d="http://schemas.microsoft.com/expression/blend/2008"
        xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006"
        xmlns:local="clr-namespace:WpfApplication1"
        mc:Ignorable="d"
        Title="ListBoxDemo" Height="323" Width="604">
    <Grid>
        <ListBox x:Name="listBox" HorizontalAlignment="Left" Height="146" Margin="81,38,0,0" VerticalAlignment="Top" Width="187" Style="{DynamicResource ListBoxStyle1}">
            <ListBox.Resources>
                <SolidColorBrush x:Key="ListBox.Static.Background" Color="#FFFFFFFF"/>
                <SolidColorBrush x:Key="ListBox.Static.Border" Color="#FFABADB3"/>
                <SolidColorBrush x:Key="ListBox.Disabled.Background" Color="#FFFFFFFF"/>
                <SolidColorBrush x:Key="ListBox.Disabled.Border" Color="#FFD9D9D9"/>
                <Style x:Key="ListBoxStyle1" TargetType="{x:Type ListBox}">
                    <Setter Property="Background" Value="{StaticResource ListBox.Static.Background}"/>
                    <Setter Property="BorderBrush" Value="{StaticResource ListBox.Static.Border}"/>
                    <Setter Property="BorderThickness" Value="1"/>
                    <Setter Property="Foreground" Value="{DynamicResource {x:Static SystemColors.ControlTextBrushKey}}"/>
                    <Setter Property="ScrollViewer.HorizontalScrollBarVisibility" Value="Auto"/>
                    <Setter Property="ScrollViewer.VerticalScrollBarVisibility" Value="Auto"/>
                    <Setter Property="ScrollViewer.CanContentScroll" Value="true"/>
                    <Setter Property="ScrollViewer.PanningMode" Value="Both"/>
                    <Setter Property="Stylus.IsFlicksEnabled" Value="False"/>
                    <Setter Property="VerticalContentAlignment" Value="Center"/>
                    <Setter Property="Template">
                        <Setter.Value>
                            <ControlTemplate TargetType="{x:Type ListBox}">
                                <Border x:Name="Bd" BorderBrush="{TemplateBinding BorderBrush}" BorderThickness="{TemplateBinding BorderThickness}" Background="{TemplateBinding Background}" Padding="1" SnapsToDevicePixels="true">
                                    <ScrollViewer Focusable="false" Padding="{TemplateBinding Padding}"   xmlns:sys="clr-namespace:System;assembly=mscorlib" Content="1111111111111111111111111111111111111111111111111111111111111222222222222222222222222222222222">
                                        <ScrollViewer.Resources>
                                            <sys:Double x:Key="{x:Static SystemParameters.VerticalScrollBarWidthKey}">100</sys:Double>
                                            <sys:Double x:Key="{x:Static SystemParameters.HorizontalScrollBarHeightKey}">50</sys:Double>
                                        </ScrollViewer.Resources>
                                    </ScrollViewer>
                                </Border>
                                <ControlTemplate.Triggers>
                                    <Trigger Property="IsEnabled" Value="false">
                                        <Setter Property="Background" TargetName="Bd" Value="{StaticResource ListBox.Disabled.Background}"/>
                                        <Setter Property="BorderBrush" TargetName="Bd" Value="{StaticResource ListBox.Disabled.Border}"/>
                                    </Trigger>
                                    <MultiTrigger>
                                        <MultiTrigger.Conditions>
                                            <Condition Property="IsGrouping" Value="true"/>
                                            <Condition Property="VirtualizingPanel.IsVirtualizingWhenGrouping" Value="false"/>
                                        </MultiTrigger.Conditions>
                                        <Setter Property="ScrollViewer.CanContentScroll" Value="false"/>
                                    </MultiTrigger>
                                </ControlTemplate.Triggers>
                            </ControlTemplate>
                        </Setter.Value>
                    </Setter>
                </Style>
            </ListBox.Resources> 
        </ListBox>


    </Grid>
</Window>

                
WPF中,Listview可以使用GridView来设置表格线。 首先,我们需要添加一个ListView控件到我们的WPF窗口中。然后,我们可以在XAML中使用GridView来定义ListView的列和表格线。 下面是一个简单的示例代码: ```xaml <ListView> <ListView.View> <GridView> <GridViewColumn Header="列1"/> <GridViewColumn Header="列2"/> <GridViewColumn Header="列3"/> </GridView> </ListView.View> </ListView> ``` 在上面的代码中,我们使用ListView.View属性指定了ListView的视图类型,并设置为GridView。然后,我们在GridView中定义了三个GridViewColumn作为ListView的列。每个GridViewColumn都有一个Header属性,用于显示列的标题。 接下来,我们可以使用ListView的ItemContainerStyle来设置表格线的样式。可以通过在XAML中添加一个Style来实现。以下是一个示例代码: ```xaml <ListView> <ListView.ItemContainerStyle> <Style TargetType="ListViewItem"> <Setter Property="BorderThickness" Value="0,1,0,0"/> <Setter Property="BorderBrush" Value="LightGray"/> </Style> </ListView.ItemContainerStyle> <ListView.View> <GridView> <GridViewColumn Header="列1"/> <GridViewColumn Header="列2"/> <GridViewColumn Header="列3"/> </GridView> </ListView.View> </ListView> ``` 在上面的代码中,我们使用了ListView的ItemContainerStyle属性来设置ListViewItem的样式。我们使用BorderThickness属性设置了每个ListViewItem的上边框,从而创建了表格线的效果。我们还使用BorderBrush属性设置了边框的颜色,让表格线看起来更明显。 通过以上方式,我们可以在WPFListView设置表格线来改善用户界面的可读性和美观性。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Bingo_BIG

你的鼓励是我最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值