2010-04-28 15 views
5

etkilenmez: nedense sadece bir bileşenidir için[WPF]: bir kaydırma çubuğu Şekillendirici ama ListView kaydırma bunu bir anahtar değeri vermeden ResourceDictionary bir kaydırma çubuğu stil am tarz

<Style TargetType="{x:Type ScrollBar}"> 
     ... 
</Style> 

Bur Scrollbar türünün stili etkilenir. ListView bileşeninin kaydırma çubuğu değil!

Stil tanımında herhangi bir anahtar değeri kullanmadığım için tüm kaydırma çubuklarının aynı stile sahip olacağını düşünürdüm!

Herhangi bir fikrin var mı?

+0

Eğer açıkladı gibi olmalı, bu nedenle yanlış davranış nedeni başka bir şey tarafından olduğunu düşünün. ListView bileşeninizin kodunu gönderir misiniz? – Drake

cevap

1

Varsayılan WPF davranışı, örtük ScrollBar stilinizin ListBox'taki kaydırma çubuklarına uygulanacak olmasıdır. Bu, uygulamanızda gerçekleşmiyorsa, bu varsayılan davranışı geçersiz kılan bir şey vardır. ListBox'a uygulanan bir şablon var mı? Varsayılan stil davranışı dışarı kanıtlamak için

Benim test uygulaması aşağıdaki gibidir:

<Window x:Class="TestScrollBarStyle.Window1" 
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" 
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" 
Title="Window1" Height="300" Width="300"> 

<Window.Resources>   
    <Style TargetType="ScrollBar"> 
     <Setter Property="Background" Value="Red" /> 
    </Style>   
</Window.Resources> 

<Grid> 
    <Grid.RowDefinitions> 
     <RowDefinition /> 
     <RowDefinition /> 
    </Grid.RowDefinitions> 

    <ScrollViewer x:Name="scroll"> 
     <Rectangle Height="200" /> 
    </ScrollViewer> 

    <ListBox Grid.Row="1" ScrollViewer.VerticalScrollBarVisibility="Visible"> 
     <ListBoxItem>Test 1</ListBoxItem> 
     <ListBoxItem>Test 2</ListBoxItem> 
     <ListBoxItem>Test 3</ListBoxItem> 
     <ListBoxItem>Test 4</ListBoxItem> 
     <ListBoxItem>Test 5</ListBoxItem> 
     <ListBoxItem>Test 6</ListBoxItem> 
     <ListBoxItem>Test 7</ListBoxItem> 
     <ListBoxItem>Test 8</ListBoxItem> 
     <ListBoxItem>Test 9</ListBoxItem> 
     <ListBoxItem>Test 10</ListBoxItem> 
     <ListBoxItem>Test 11</ListBoxItem> 
    </ListBox> 

</Grid>