How to increase scrollbar width in WPF ScrollViewer? How to increase scrollbar width in WPF ScrollViewer? wpf wpf

How to increase scrollbar width in WPF ScrollViewer?


The ScrollBar template reaches out for system parameters to determine its width/height (depending on orientation). Therefore, you can override those parameters:

<ScrollViewer>    <ScrollViewer.Resources>        <sys:Double x:Key="{x:Static SystemParameters.VerticalScrollBarWidthKey}">100</sys:Double>    </ScrollViewer.Resources></ScrollViewer>


Kent's answer can also be applied to easily all scrollbars in your application by placing it in your App.xaml resources, and by specifying the horizontal height key as well.

<Application    xmlns:sys="clr-namespace:System;assembly=mscorlib"    ...>    <Application.Resources>        <sys:Double x:Key="{x:Static SystemParameters.VerticalScrollBarWidthKey}">50</sys:Double>        <sys:Double x:Key="{x:Static SystemParameters.HorizontalScrollBarHeightKey}">50</sys:Double>    </Application.Resources></Application>


Here is a XAML solution:

<Style x:Key="{x:Type ScrollBar}" TargetType="{x:Type ScrollBar}">    <Setter Property="Stylus.IsFlicksEnabled" Value="True" />    <Style.Triggers>        <Trigger Property="Orientation" Value="Horizontal">            <Setter Property="Height" Value="40" />            <Setter Property="MinHeight" Value="40" />        </Trigger>        <Trigger Property="Orientation" Value="Vertical">            <Setter Property="Width" Value="40" />            <Setter Property="MinWidth" Value="40" />        </Trigger>    </Style.Triggers></Style>