- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我目前正在设计我的应用程序 (WPF),我正在尝试更改 DatagridRow
的 IsSelected
的设计。
XAML:
<Style TargetType="DataGridRow" BasedOn="{StaticResource {x:Type DataGridRow}}">
<Style.Triggers>
<Trigger Property="IsSelected" Value="True">
<Setter Property="Foreground" Value="{StaticResource ForegroundSelectedRow}"/>
<Setter Property="Background" Value="{StaticResource BackgroundSelectedRow}"/>
</Trigger>
</Style.Triggers>
</Style>
当我将注意力集中在我的应用程序上时,此代码可以正常工作,但是当我使用 DataGrid
单击 View 时,我失去了前景(它采用另一种颜色)但背景是还是一样...
我不明白为什么只有一个可以工作,而另一个却不能...有人知道为什么吗?
编辑 1:
我没有任何 DataGrid.Resources。我在 App.xaml 中设置了我所有的样式:
<Style x:Key="DataGridStyle" TargetType="DataGrid" BasedOn="{StaticResource {x:Type DataGrid}}">
<Setter Property="AlternationCount" Value="2"/>
<Setter Property="AutoGenerateColumns" Value="False"/>
<Setter Property="IsReadOnly" Value="True"/>
<Setter Property="CanUserSortColumns" Value="True"/>
<Setter Property="CanUserAddRows" Value="False"/>
</Style>
然后我将它绑定(bind)到我的 DataGrid
<DataGrid ItemsSource="{Binding Collects}" Style="{StaticResource DataGridStyle}" ColumnHeaderStyle="{StaticResource DGHeaderMargin}"/>
最佳答案
您可以将 TargedType 更改为 DataGridCell
而不是 DataGridRow
(WPF 4.0)
<DataGrid.Resources>
<Style TargetType="{x:Type dg:DataGridCell}">
<Style.Triggers>
<Trigger Property="dg:DataGridCell.IsSelected" Value="True">
<Setter Property="Foreground" Value="{StaticResource ForegroundSelectedRow}"/>
<Setter Property="Background" Value="{StaticResource BackgroundSelectedRow}"/>
</Trigger>
</Style.Triggers>
</Style>
解决方案 2
<DataGrid.Resources>
<Style TargetType="DataGridRow">
<Style.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="Red"/>
</Style.Resources>
</Style>
</DataGrid.Resources>
关于c# - DatagridRow IsSelected 不完全工作,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41139975/
跟踪DataGridRow.Item之后和 DataGridRow.IsNewItem属性,我发现:每个添加的项目(当 Source 为 ObservableCollection 时添加到 DataG
我在弄乱 DataGridRow 的 Background 时发现了一些奇怪的东西。 DataGridRow 的背景颜色显示为白色,如果打印它,您将得到以下输出: System.Console.Wri
我有一个 DataGrid并且我希望选定行和焦点行同步,即如果焦点行发生变化,则选定行发生变化,如果选定行发生变化,则它成为焦点行。 给定具有以下 XAML 的 WPF 窗口,如何同步焦点行和选定行?
我一直在尝试弄清楚如何将这种自定义行为放入数据网格中,而无需在网上搜索解决方案时仔细查看。 给定以下数据网格(为简洁起见删除了一些 xaml):
有没有办法使用 XAML 根据其中一个单元格的内容动态设置行的背景? 谢谢, 菲尔 最佳答案 您可以为行定义样式并使用 DataTrigger 更改颜色。像这样的东西:
我已经在这几天了,找不到解决方案,请帮忙。 我有一个 WPF 应用程序我有一个 DataGridCombobox 它里面有东西(参数列表)。我还可以将徒手键入的文本添加到组合框中,例如“测试”,如下图
我有一个具有交替行背景颜色的数据绑定(bind) DataGrid。我想根据单元格包含的数据对单元格进行不同的着色。我已经尝试过这个线程建议的解决方案 http://wpf.codeplex.com/
我目前正在设计我的应用程序 (WPF),我正在尝试更改 DatagridRow 的 IsSelected 的设计。 XAML:
我对 WPF 和 XAML 很陌生,所以我可能会以错误的方式解决这个问题。 我有一个使用 Entity Framework 绑定(bind)到数据源的 DataGrid。 当我向 DataGrid 添
我目前已将此方法设置为检测对 DataGrid 中每一行的双击: private void Row_DoubleClick(object sender, RoutedEventArgs e)
我正在制作一个 WPF 程序,该程序能够使用 for 循环将 DataGrid 中的行逐一着色为红色,我遇到了一些奇怪的事情.如果 DataGrid 有超过 40 行来自数据库表的数据,它不会为所有行
当鼠标离开一行时,我有一个鼠标离开事件 因此在处理程序中,我尝试获取与该行绑定(bind)的带下划线的项目 private void Row_Mou
我的数据网格上有一个样式来禁用基于属性绑定(bind)的 DataGridRow。这使得该行无法选择,这就是我想要的。但是,我仍然可以使用至少 2 种其他方式选择禁用的行。第一个是如果我在禁用行周围的
当鼠标离开一行时,我有一个鼠标离开事件 因此在处理程序中,我尝试获取与该行绑定(bind)的带下划线的项目 private void Row_Mou
我有 DataGrid 的 DataGridRow,如何从中获取各个列的值?请参阅下面的代码。 var itemsSource = MESearchDatagrid.ItemsSource as IE
我正在创建一个 DataGrid,其中的行具有 AlternatingRowBackground 属性。但是,行中的数据必须修改,这需要一些时间。 我正在尝试使行的背景颜色在初始化时显示为浅灰色。这是
我在将对象传递给 WPF 中的转换器时遇到了问题。 我的 DataGrid 看起来像:
我希望将我的 DataGrid 中行的选定样式从默认的深蓝色和白色文本更改为实际上取决于行中现有的前景颜色,如下所示:
我正在用 C# 创建一个 WPF 应用程序。在我的窗口中有一个 DataGrid。在网格中有 2 列。第一列仅包含字符串。在第二列中,我想显示我创建的用户控件。 UserControl(称为:Prod
我不明白为什么代码的第一部分不起作用,但第二部分却起作用。 第 1 部分
我是一名优秀的程序员,十分优秀!