求助 WPF ListViewItem样式问题

求助 WPF ListViewItem样式问题

.NET 开发

>

Windows Presentation Foundation

Вопрос

  • 0

    Нужно войти

    <Style TargetType="ListViewItem">
                <!--<Setter Property="Margin" Value="0,1,0,0"/>-->
                <Setter Property="Height" Value="21"/>
                <Setter Property="Foreground" Value="Black" />
                <Setter Property="Background" Value="White" />
                <Style.Triggers>
                    <MultiTrigger>
                        <MultiTrigger.Conditions>
                            <Condition Property="IsSelected" Value="true" />
                            <Condition Property="Selector.IsSelectionActive" Value="true" />
                        </MultiTrigger.Conditions>
                        <Setter Property="Background">
                            <Setter.Value>
                                <SolidColorBrush Color="Red" />
                            </Setter.Value>
                        </Setter>
                        <Setter Property="BorderBrush" Value="{x:Null}" />
                    </MultiTrigger>
    
                    <Trigger Property="IsMouseOver" Value="true">
                        <Setter Property="Panel.Background" >
                            <Setter.Value>
                                <SolidColorBrush Color="#FFE6E6E7" />
                            </Setter.Value>
                        </Setter>
                        <Setter Property="BorderBrush" Value="{x:Null}" />
                        <Setter Property="Cursor" Value="Hand"/>
                    </Trigger>
                </Style.Triggers>
            </Style>
     <ListView  HorizontalAlignment="Stretch" Margin="0" Name="listView1"
                       VerticalAlignment="Stretch" BorderBrush="{x:Null}" SelectionMode="Single"
                       SelectionChanged="listView1_SelectionChanged" >
    
                <ListView.View>
                    <GridView  ColumnHeaderContainerStyle="{ StaticResource GridHeaderRight}" >
    
                        <GridViewColumn Width="100"  Header="日期">
                            <GridViewColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBlock Text="{Binding Path=Date}" HorizontalAlignment="Left" ></TextBlock>
                                </DataTemplate>
                            </GridViewColumn.CellTemplate>
                        </GridViewColumn>
      </GridView>
                </ListView.View>
            </ListView>
    

    上面 是我设置的 ListViewItem的代码

    结果的效果 鼠标移上去和和选中的背景色应该是 SolidColorBrush 但结果却是渐变色  郁闷啊


    Swat

    11 октября 2011 г. 14:13

    Ответить

    |

    Цитировать

Все ответы

  • 0

    Нужно войти

    我给ListViewItem设置样式的时候 的时候 出现了 一个问题 请大家帮助下

    代码

      <Style TargetType="ListViewItem">
                <!--<Setter Property="Margin" Value="0,1,0,0"/>-->
                <Setter Property="Height" Value="21"/>
                <Setter Property="Foreground" Value="Black" />
                <Setter Property="Background" Value="White" />
                <Style.Triggers>
                    <MultiTrigger>
                        <MultiTrigger.Conditions>
                            <Condition Property="IsSelected" Value="true" />
                            <Condition Property="Selector.IsSelectionActive" Value="true" />
                        </MultiTrigger.Conditions>
                        <Setter Property="Background">
                            <Setter.Value>
                                <SolidColorBrush Color="Red" />
                            </Setter.Value>
                        </Setter>
                        <Setter Property="BorderBrush" Value="{x:Null}" />
                    </MultiTrigger>
    
                    <Trigger Property="IsMouseOver" Value="true">
                        <Setter Property="Panel.Background" >
                            <Setter.Value>
                                <SolidColorBrush Color="#FFE6E6E7" />
                            </Setter.Value>
                        </Setter>
                        <Setter Property="BorderBrush" Value="{x:Null}" />
                        <Setter Property="Cursor" Value="Hand"/>
                    </Trigger>
                </Style.Triggers>
            </Style>
    
     <ListView  HorizontalAlignment="Stretch" Margin="0" Name="listView1"
                       VerticalAlignment="Stretch" BorderBrush="{x:Null}" SelectionMode="Single"
                       SelectionChanged="listView1_SelectionChanged" >
    
                <ListView.View>
                    <GridView  ColumnHeaderContainerStyle="{ StaticResource GridHeaderRight}" >
    
                        <GridViewColumn Width="100"  Header="日期">
                            <GridViewColumn.CellTemplate>
                                <DataTemplate>
                                    <TextBlock Text="{Binding Path=Date}" HorizontalAlignment="Left" ></TextBlock>
                                </DataTemplate>
                            </GridViewColumn.CellTemplate>
                        </GridViewColumn>
      </GridView>
                </ListView.View>
            </ListView>
    


    选择行的背景色 和鼠标移上去  应该是单色  但是却是 渐变  很郁闷啊 求助 谢谢

    11 октября 2011 г. 8:42

    Ответить

    |

    Цитировать

  • 0

    Нужно войти

    <Setter
    Property="Background">
                           
    <Setter.Value>
                               
    <SolidColorBrush
    Color="Red"
    />
                           
    </Setter.Value>
                       
    </Setter>
    改成 <Setter
    Property="Background" Value ="Red"/>试试呢!

    12 октября 2011 г. 9:11

    Ответить

    |

    Цитировать

  • 0

    Нужно войти

    一样  都试过了


    Swat

    13 октября 2011 г. 1:02

    Ответить

    |

    Цитировать

  • 0

    Нужно войти

    你好,

    你贴出的代码应该没有什么问题。 实际看到的效果是和ListViewItem的ControlTemplate直接相关的,你可以贴出来看一下吗?

    另外,如果你的项目中应用很多样式的话,我建议你新建一个项目,把样式逐个加入,这样可以找到到底是哪个样式出了问题。

时间: 09-28

求助 WPF ListViewItem样式问题的相关文章

WPF自定义样式篇-DataGrid

WPF自定义样式篇-DataGrid 先上效果图: 样式: <!--DataGrid样式-->    <Style TargetType="DataGrid">        <Setter Property="RowHeaderWidth" Value="0"></Setter>        <Setter Property="AutoGenerateColumns"

WPF设置样式的几种方式

第一种方式是直接使用Setter来进行,可以对Background等进行设置. <Window.Resources> <Style TargetType="Button"> <Setter Property="Background" Value="Red"/> </Style></Window.Resources> 第二种是直接将比较复杂一点的Style放置到Window.Resourc

WPF DataGrid 样式设置

隔行换色,鼠标单击,悬浮样式都有,其具体效果如图 1 所示. 图 1 WPF DataGrid 样式设置效果图 其中: 界面设计代码下所示 ? + 查看代码 1 2 3 4 5 6 7 8 9 10 11 12 <DataGrid AutoGenerateColumns="False"  Name="dataGrid1"  VerticalAlignment="Top"       CanUserSortColumns="Fals

WPF中样式和行为和触发器

原文:WPF中样式和行为和触发器 样式简介:样式(style)是组织和重用格式化选项的重要工具,不是使用重复的标记填充XAML,以便设置外边距.内边距.颜色以及字体等细节.而是创建一系列封装所有这些细节的样式,然后在需要之处通过属性来设置样式.名称空间是System.Windows. 1.样式. 为了理解适合使用样式的集合,分析一个简单的示例,设想需要标准化在窗口中使用的字体,最简单的方式是设置包含窗口的字体属性,这些属性都是在Control类中定义的,包括FontFamily.FontSize

WPF之样式——style

wpf这门编写winform程序的技术相比常规的winform技术有一个很显著的特点--炫! 怎么才能炫起来呢? 我们都知道常规的winform技术就是拖控件,总的来说想用常规的winform技术来实现很好看的界面很难. 但是wpf就可以实现起来很轻松. 有过web知识的童鞋很好理解,咱们看到的网站大部分都比winfrom好看的多,为啥? 因为里面所有的控件都是程序人员拿HTML编写的,编程人员可以自由的定义控件的样式.我们的WPF一样可以轻松的定义控件的样式. 下面我们一起来体验一下: 我们建

WPF编程—样式

WPF编程学习——样式 本文目录 1.引言 2.怎样使用样式? 3.内联样式 4.已命名样式 5.元素类型样式 6.编程控制样式 7.触发器 1.引言 样式(Style),主要是用来让元素或内容呈现一定外观的属性.WPF中的样式的作用,就像Web中的CSS一样,为界面上的元素定制外观,以提供更好的用户界面.在WPF应用程序中,通过控件的属性,我们也可以实现更改控件的外观.但是,这种方式局限性大.不灵活且不利于维护.例如: 复制代码 <Grid> <Button Width="8

WPF Slider样式

简述 ?? WPF中Slider分为三部分,滑块类型为Thumb:进度条类型为RepeatButton,其中:位于滑块左侧或下侧部分为DecreaseRepeatButton,位于滑块右侧或上侧部分为IncreaseRepeatButton.?? 设置Slider样式时,一般单独设置三部分的样式(Style),然后在Sldier的样式(Style)中引用它们. 代码示例 <Style TargetType="{x:Type Thumb}" x:Key="SliderTh

WPF常用样式总结

常用控件样式: <ResourceDictionary xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"> <!-- 文字按钮 --> <Style x:Key="stlTxtBtn" TargetType="{x:T

WPF 常用样式

TextBox <Window x:Class="WpfDemo.ListBoxTemaple" xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation" xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml" Title="ListBoxTemaple" Height="300&qu