Wpf 将LayoutTransform应用于DataGridTextColumn
我有一个Wpf 将LayoutTransform应用于DataGridTextColumn,wpf,.net-4.0,datagrid,layouttransform,Wpf,.net 4.0,Datagrid,Layouttransform,我有一个DataGrid包含一些DataGridTextColumns,我想对单元格应用一个简单的LayoutTransform,而不是标题 问题是,DataGridTextColumn不提供LayoutTransform 我能够将布局转换应用于DataGridTemplateColumn,但我丢失了大量功能,无法重新构建 到目前为止,我的样本是: <DataGridTemplateColumn Header="Satz"> <DataGridTemplateColumn.
DataGrid
包含一些DataGridTextColumn
s,我想对单元格应用一个简单的LayoutTransform
,而不是标题
问题是,DataGridTextColumn
不提供LayoutTransform
我能够将布局转换
应用于DataGridTemplateColumn
,但我丢失了大量功能,无法重新构建
到目前为止,我的样本是:
<DataGridTemplateColumn Header="Satz">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<TextBlock Margin="3,0,4,1" Text="{Binding Satz}">
<TextBlock.LayoutTransform>
<ScaleTransform ScaleX="1.4" ScaleY="1.4"/>
</TextBlock.LayoutTransform>
</TextBlock>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
<DataGridTemplateColumn.CellEditingTemplate>
<DataTemplate>
<TextBox BorderThickness="0" Text="{Binding Satz, Mode=TwoWay, UpdateSourceTrigger=PropertyChanged, ValidatesOnDataErrors=True}">
<TextBox.LayoutTransform>
<ScaleTransform ScaleX="1.4" ScaleY="1.4"/>
</TextBox.LayoutTransform>
</TextBox>
</DataTemplate>
</DataGridTemplateColumn.CellEditingTemplate>
</DataGridTemplateColumn>
我在寻找两种方法中的一种:-缩放
DataGridTextColumn
或者,如果这不可能
-更改
DataGridTemplateColumn
,使其支持DataGridTextColumn
(排序、编辑)的所有功能,最重要的是,提供相同的用户界面(目前templatecolumn中的编辑工作与textcolumn不同)。将LayoutTransform放在CellStyle中如何
<DataGrid x:Name="dg">
<DataGrid.Resources>
<Style x:Key="myCellStyle" TargetType="DataGridCell">
<Setter Property="LayoutTransform">
<Setter.Value>
<ScaleTransform ScaleX="1.4" ScaleY="1.4"/>
</Setter.Value>
</Setter>
</Style>
</DataGrid.Resources>
<DataGrid.Columns>
<DataGridTextColumn CellStyle="{StaticResource myCellStyle}" Binding="{Binding Field}"/>
</DataGrid.Columns>
</DataGrid>
但不知何故,它对我不起作用,我得到一个异常“”,它不是属性“CellStyle”(我的德语翻译)的有效值。看起来静态资源是空的?嗯。。。不知道你为什么会犯这样的错误。你是照原样复制了上面的XAML还是对它做了任何修改?噢,该死,对不起,我的错误-我有一行额外的东西我试过了,它包含了令人不快的空单元格样式-在你提出问题后,我擦洗了我的代码,它成功了!