MahApps DataGrid 列 header 大小写
MahApps DataGrid column header casing
我正在使用优秀的 MahApps 库来设计我的 WPF 应用程序,并集成了一个 DataGrid 来显示数据库中的行。 MahApps 的 DataGrid 默认样式在 upper-case 中显示列 headers,但在我的例子中,我需要保留列的原始大小写。
现在我不是 WPF 方面的专家,更不是 WPF 样式方面的专家,所以我想知道是否有一种 "easy" 方法可以只重置那里使用的 TextBlock 的大小写,或者我是否有re-define 一个完整的 DataGrid 样式。
提前致谢,
托马斯
您可以通过只为 DataGridColumnHeader 而不是整个 DataGrid 创建样式来做到这一点:
<Window xmlns:controls="http://metro.mahapps.com/winfx/xaml/controls"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
... >
<Window.Resources>
<Style x:Key="MyColumnHeader"
BasedOn="{StaticResource MetroDataGridColumnHeader}"
TargetType="{x:Type DataGridColumnHeader}">
<Setter Property="controls:ControlsHelper.ContentCharacterCasing" Value="Normal"/>
</Style>
</Window.Resources>
...
<DataGrid ColumnHeaderStyle="{StaticResource MyColumnHeader}"
... />
...
</Window>
确保您拥有最新(预发布)版本的 MahApps(截至 2015 年 10 月 29 日)
我正在使用优秀的 MahApps 库来设计我的 WPF 应用程序,并集成了一个 DataGrid 来显示数据库中的行。 MahApps 的 DataGrid 默认样式在 upper-case 中显示列 headers,但在我的例子中,我需要保留列的原始大小写。
现在我不是 WPF 方面的专家,更不是 WPF 样式方面的专家,所以我想知道是否有一种 "easy" 方法可以只重置那里使用的 TextBlock 的大小写,或者我是否有re-define 一个完整的 DataGrid 样式。
提前致谢, 托马斯
您可以通过只为 DataGridColumnHeader 而不是整个 DataGrid 创建样式来做到这一点:
<Window xmlns:controls="http://metro.mahapps.com/winfx/xaml/controls"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
... >
<Window.Resources>
<Style x:Key="MyColumnHeader"
BasedOn="{StaticResource MetroDataGridColumnHeader}"
TargetType="{x:Type DataGridColumnHeader}">
<Setter Property="controls:ControlsHelper.ContentCharacterCasing" Value="Normal"/>
</Style>
</Window.Resources>
...
<DataGrid ColumnHeaderStyle="{StaticResource MyColumnHeader}"
... />
...
</Window>
确保您拥有最新(预发布)版本的 MahApps(截至 2015 年 10 月 29 日)