added SSCLI 1.0
[windows-sources.git] / sdk / samples / WPFSamples / ControlTemplateExamples / csharp / resources / scrollbar.xaml
blobf81c8a523ae62dcfa460de2e51cf2c246d091f02
1 <ResourceDictionary 
2   xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
3   xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" >
5   <ResourceDictionary.MergedDictionaries>
6     <ResourceDictionary Source="Shared.xaml" />
7   </ResourceDictionary.MergedDictionaries>
9   <Style x:Key="ScrollBarLineButton" TargetType="{x:Type RepeatButton}">
10     <Setter Property="SnapsToDevicePixels" Value="True"/>
11     <Setter Property="OverridesDefaultStyle" Value="true"/>
12     <Setter Property="Focusable" Value="false"/>
13     <Setter Property="Template">
14       <Setter.Value>
15         <ControlTemplate TargetType="{x:Type RepeatButton}">
16           <Border 
17             Name="Border"
18             Margin="1" 
19             CornerRadius="2" 
20             Background="{StaticResource NormalBrush}"
21             BorderBrush="{StaticResource NormalBorderBrush}"
22             BorderThickness="1">
23             <Path 
24               HorizontalAlignment="Center"
25               VerticalAlignment="Center"
26               Fill="{StaticResource GlyphBrush}"
27               Data="{Binding Path=Content,RelativeSource={RelativeSource TemplatedParent}}" />
28           </Border>
29           <ControlTemplate.Triggers>
30             <Trigger Property="IsPressed" Value="true">
31               <Setter TargetName="Border" Property="Background" Value="{StaticResource PressedBrush}" />
32             </Trigger>
33             <Trigger Property="IsEnabled" Value="false">
34               <Setter Property="Foreground" Value="{StaticResource DisabledForegroundBrush}"/>
35             </Trigger>
36           </ControlTemplate.Triggers>
37         </ControlTemplate>
38       </Setter.Value>
39     </Setter>
40   </Style>
42   <Style x:Key="ScrollBarPageButton" TargetType="{x:Type RepeatButton}">
43     <Setter Property="SnapsToDevicePixels" Value="True"/>
44     <Setter Property="OverridesDefaultStyle" Value="true"/>
45     <Setter Property="IsTabStop" Value="false"/>
46     <Setter Property="Focusable" Value="false"/>
47     <Setter Property="Template">
48       <Setter.Value>
49         <ControlTemplate TargetType="{x:Type RepeatButton}">
50           <Border Background="Transparent" />
51         </ControlTemplate>
52       </Setter.Value>
53     </Setter>
54   </Style>
56   <Style x:Key="ScrollBarThumb" TargetType="{x:Type Thumb}">
57     <Setter Property="SnapsToDevicePixels" Value="True"/>
58     <Setter Property="OverridesDefaultStyle" Value="true"/>
59     <Setter Property="IsTabStop" Value="false"/>
60     <Setter Property="Focusable" Value="false"/>
61     <Setter Property="Template">
62       <Setter.Value>
63         <ControlTemplate TargetType="{x:Type Thumb}">
64           <Border 
65             CornerRadius="2" 
66             Background="{TemplateBinding Background}"
67             BorderBrush="{TemplateBinding BorderBrush}"
68             BorderThickness="1" />
69         </ControlTemplate>
70       </Setter.Value>
71     </Setter>
72   </Style>
74   <ControlTemplate x:Key="VerticalScrollBar" TargetType="{x:Type ScrollBar}">
75     <Grid >
76       <Grid.RowDefinitions>
77         <RowDefinition MaxHeight="18"/>
78         <RowDefinition Height="0.00001*"/>
79         <RowDefinition MaxHeight="18"/>
80       </Grid.RowDefinitions>
81       <Border
82         Grid.RowSpan="3"
83         CornerRadius="2" 
84         Background="#F0F0F0" />
85       <RepeatButton 
86         Grid.Row="0"                           
87         Style="{StaticResource ScrollBarLineButton}"
88         Height="18"
89         Command="ScrollBar.LineUpCommand"
90         Content="M 0 4 L 8 4 L 4 0 Z" />
91       <Track 
92         Name="PART_Track"
93         Grid.Row="1"
94         IsDirectionReversed="true">
95         <Track.DecreaseRepeatButton>
96           <RepeatButton 
97             Style="{StaticResource ScrollBarPageButton}"
98             Command="ScrollBar.PageUpCommand" />
99         </Track.DecreaseRepeatButton>
100         <Track.Thumb>
101           <Thumb 
102             Style="{StaticResource ScrollBarThumb}" 
103             Margin="1,0,1,0"  
104             Background="{StaticResource HorizontalNormalBrush}"
105             BorderBrush="{StaticResource HorizontalNormalBorderBrush}" />
106         </Track.Thumb>
107         <Track.IncreaseRepeatButton>
108           <RepeatButton 
109             Style="{StaticResource ScrollBarPageButton}"
110             Command="ScrollBar.PageDownCommand" />
111         </Track.IncreaseRepeatButton>
112       </Track>
113       <RepeatButton 
114         Grid.Row="3" 
115         Style="{StaticResource ScrollBarLineButton}"
116         Height="18"
117         Command="ScrollBar.LineDownCommand"
118         Content="M 0 0 L 4 4 L 8 0 Z"/>
119     </Grid>
120   </ControlTemplate>
122   <ControlTemplate x:Key="HorizontalScrollBar" TargetType="{x:Type ScrollBar}">
123     <Grid >
124       <Grid.ColumnDefinitions>
125         <ColumnDefinition MaxWidth="18"/>
126         <ColumnDefinition Width="0.00001*"/>
127         <ColumnDefinition MaxWidth="18"/>
128       </Grid.ColumnDefinitions>
129       <Border
130         Grid.ColumnSpan="3"
131         CornerRadius="2" 
132         Background="#F0F0F0" />
133       <RepeatButton 
134         Grid.Column="0"                           
135         Style="{StaticResource ScrollBarLineButton}"
136         Width="18"
137         Command="ScrollBar.LineLeftCommand"
138         Content="M 4 0 L 4 8 L 0 4 Z" />
139       <Track 
140         Name="PART_Track"
141         Grid.Column="1"
142         IsDirectionReversed="False">
143         <Track.DecreaseRepeatButton>
144           <RepeatButton 
145             Style="{StaticResource ScrollBarPageButton}"
146             Command="ScrollBar.PageLeftCommand" />
147         </Track.DecreaseRepeatButton>
148         <Track.Thumb>
149           <Thumb 
150             Style="{StaticResource ScrollBarThumb}" 
151             Margin="0,1,0,1"  
152             Background="{StaticResource NormalBrush}"
153             BorderBrush="{StaticResource NormalBorderBrush}" />
154         </Track.Thumb>
155         <Track.IncreaseRepeatButton>
156           <RepeatButton 
157             Style="{StaticResource ScrollBarPageButton}"
158             Command="ScrollBar.PageRightCommand" />
159         </Track.IncreaseRepeatButton>
160       </Track>
161       <RepeatButton 
162         Grid.Column="3" 
163         Style="{StaticResource ScrollBarLineButton}"
164         Width="18"
165         Command="ScrollBar.LineRightCommand"
166         Content="M 0 0 L 4 4 L 0 8 Z"/>
167     </Grid>
168   </ControlTemplate>
170   <Style x:Key="{x:Type ScrollBar}" TargetType="{x:Type ScrollBar}">
171     <Setter Property="SnapsToDevicePixels" Value="True"/>
172     <Setter Property="OverridesDefaultStyle" Value="true"/>
173     <Style.Triggers>
174       <Trigger Property="Orientation" Value="Horizontal">
175         <Setter Property="Width" Value="Auto"/>
176         <Setter Property="Height" Value="18" />
177         <Setter Property="Template" Value="{StaticResource HorizontalScrollBar}" />
178       </Trigger>
179       <Trigger Property="Orientation" Value="Vertical">
180         <Setter Property="Width" Value="18"/>
181         <Setter Property="Height" Value="Auto" />
182         <Setter Property="Template" Value="{StaticResource VerticalScrollBar}" />
183       </Trigger>
184     </Style.Triggers>
185   </Style>
186 </ResourceDictionary>