2012-08-15 34 views

回答

2

喲必須override the default template of scrollViewer增加垂直滾動條的寬度。在您所有的滾動條應用模板把覆蓋樣式在你的應用程序資源 -

<Style TargetType="{x:Type ScrollViewer}"> 
    <Setter Property="OverridesDefaultStyle" Value="True"/> 
    <Setter Property="HorizontalContentAlignment" Value="Left" /> 
    <Setter Property="VerticalContentAlignment" Value="Top" /> 
    <Setter Property="Template"> 
    <Setter.Value> 
     <ControlTemplate TargetType="{x:Type ScrollViewer}"> 
     <Grid> 
      <Grid.ColumnDefinitions> 
      <ColumnDefinition Width="Auto"/> 
      <ColumnDefinition/> 
      </Grid.ColumnDefinitions> 
      <Grid.RowDefinitions> 
      <RowDefinition/> 
      <RowDefinition Height="Auto"/> 
      </Grid.RowDefinitions> 

      <ScrollContentPresenter Grid.Column="1"/> 

      <ScrollBar Name="PART_VerticalScrollBar" 
      Value="{TemplateBinding VerticalOffset}" 
      Width="40" 
      Maximum="{TemplateBinding ScrollableHeight}" 
      ViewportSize="{TemplateBinding ViewportHeight}" 
      Visibility="{TemplateBinding ComputedVerticalScrollBarVisibility}"/> 
      <ScrollBar Name="PART_HorizontalScrollBar" 
      Orientation="Horizontal" 
      Grid.Row="1" 
      Grid.Column="1" 
      Value="{TemplateBinding HorizontalOffset}" 
      Maximum="{TemplateBinding ScrollableWidth}" 
      ViewportSize="{TemplateBinding ViewportWidth}" 
      Visibility="{TemplateBinding ComputedHorizontalScrollBarVisibility}"/> 

     </Grid> 
     </ControlTemplate> 
    </Setter.Value> 
    </Setter> 
</Style> 

您可以設置'PART_VerticalScrollBar'寬度到您所需的寬度(比如在上面的例子40).Placing Application Resources下這種風格(應用程序.xaml)使其適用於整個應用程序。

+0

謝謝。這工作,但它顯示屏幕左側的滾動條。任何想法如何解決這個問題? – tzerb 2012-08-15 14:14:48

+0

我已經更新了答案。在樣式中將「Horizo​​ntalContentAlignment設置爲左」和「VerticalContentAlignment設置爲Top」。看看它是否有效。 – 2012-08-15 14:23:16

+0

也爲默認模板參考此鏈接 - http://msdn.microsoft.com/en-us/library/cc278065(v=vs.95).aspx – 2012-08-15 14:23:59

1

您需要在Resources中創建一個Style,指示TargetType

此樣式將應用於xaml文件中的所有滾動條。

<Window.Resources> 
    <Style TargetType="{x:Type ScrollBar}"> 
     .... 
    </Style> 
相關問題