改变ListBoxItem选中的颜色

改变ListBoxItem主要是改变的style

 

下面直接看代码吧!!!

 1   <Style TargetType="{x:Type ListBoxItem}">
 2              <Setter Property="SnapsToDevicePixels" Value="true"/>
 3              <Setter Property="OverridesDefaultStyle" Value="true"/>
 4              <Setter Property="Template">
 5                  <Setter.Value>
 6                      <ControlTemplate TargetType="{x:Type ListBoxItem}">
 7  
 8                          <Grid SnapsToDevicePixels="true">
 9                              <Border x:Name="Border" Background="Aqua"/>
10                              <ContentPresenter />
11                          </Grid>
12                          <ControlTemplate.Triggers>
13                              <Trigger Property="IsSelected" Value="true">
14                                  <Setter Property="Background" TargetName="Border" Value="Red"/>
15                              </Trigger>
16                          </ControlTemplate.Triggers>
17                      </ControlTemplate>
18                  </Setter.Value>
19              </Setter>
20          </Style>

 

在第一行代码要注意的是

<Style TargetType="{x:Type ListBoxItem}">这里没有使用x:key属性

这样模块下所有的ListBoxItem

总结:当ListBoxItem中指定了style时,就不会使用到以上定义的样式。

根据上文指定了ListBoxItem 自动填充ListBox
 <ListBox.ItemContainerStyle>
3     <Style TargetType="ListBoxItem">
4       <Setter Property="HorizontalContentAlignment" Value="Stretch"/>
5     </Style>
6   </ListBox.ItemContainerStyle>

 


可以把上面的样式写在这里,但是这两个样式不能同使用。

 

posted @ 2014-10-12 21:55  玖彩技术团队  阅读(1659)  评论(0编辑  收藏  举报
以上只是个人想法和实践经验,如果有文字错误和语法错误,请加以指点! QQ:247039968 emil:wujc@younger.com 无论是美女的歌声,还是鬣狗的狂吠,无论是鳄鱼的眼泪,还是恶狼的嚎叫,都不会使我动摇