首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何用DataGrid覆盖MaterialDesignThemes样式的属性?

如何用DataGrid覆盖MaterialDesignThemes样式的属性?
EN

Stack Overflow用户
提问于 2021-10-04 08:26:45
回答 1查看 336关注 0票数 0

我在XAML中使用了材料设计,我有一个DataGrid,当选中一行时,鼠标离开行,那么行的背景会更改为白色,如果鼠标返回它就会更改回原来的颜色。我想我找到了设置它的代码部分,但我似乎无法覆盖它.这是'MaterialDesignDataGridCell‘风格,对我来说,这似乎是它的设置。

代码语言:javascript
复制
<MultiDataTrigger>
            <MultiDataTrigger.Conditions>
                <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="True"/>
                <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType=DataGridRow}}" Value="False" />
            </MultiDataTrigger.Conditions>
            <Setter Property="Background" Value="{DynamicResource MaterialDesignSelection}" />
        </MultiDataTrigger>

我尝试复制这个触发器并设置一个不同的值,在鼠标上方为false设置背景时设置一个触发器,然后尝试设置这些值,但没有结果:

代码语言:javascript
复制
<Style.Resources>
                        <SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Black" />
                        <SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="Black" />
                        <SolidColorBrush x:Key="{x:Static SystemColors.InactiveSelectionHighlightBrushKey}" Color="Black"/>
                    </Style.Resources>
EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2021-10-05 09:14:54

不太确定您正在尝试实现什么,但是如果您想要覆盖数据单元格的单元格样式,您可以这样做

代码语言:javascript
复制
<DataGrid>
   <DataGrid.CellStyle>
        <Style TargetType="DataGridCell" BasedOn="{StaticResource MaterialDesignDataGridCell}">
        <Style.Triggers>
                 <MultiDataTrigger>
                      <MultiDataTrigger.Conditions>
                           <Condition Binding="{Binding IsSelected, RelativeSource={RelativeSource Self}}" Value="True"/>
                           <Condition Binding="{Binding IsMouseOver, RelativeSource={RelativeSource AncestorType=DataGridRow}}" Value="False" />
                      </MultiDataTrigger.Conditions>
                          <Setter Property="Background" Value="Red" />
                 </MultiDataTrigger>
        </Style.Triggers>
      </Style>
   </DataGrid.CellStyle>
</DataGrid>
票数 2
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/69433002

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档