Ric*_*pos 6 wpf xaml datagrid celltemplate
我希望在WPF数据网格中有一个自定义列类型,其中一部分将是用户输入的文本框.不幸的是,它似乎没有继承数据网格本身的外观 - 它不显示交替颜色,当选择或编辑一行时,相关单元格不会以相同方式突出显示,依此类推.
<DataGridTemplateColumn Header="Name" >
<DataGridTemplateColumn.CellTemplate>
<DataTemplate >
<TextBox Text="{Binding DisplayName,Mode=TwoWay,UpdateSourceTrigger=PropertyChanged}" IsReadOnly="False" BorderThickness="0" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
Run Code Online (Sandbox Code Playgroud)
看起来默认文本框的样式会覆盖数据网格的样式; 有没有办法只使用datagrids风格?我当然可以设置文本框的样式以模仿数据网格,但如果我想添加其他控件,我也必须为每个控件执行此操作.如果我沿着那条路走下去,我将如何根据celltemplate中的datagridrow属性更改样式? - 例如IsSelected.
小智 1
请更改您的 XAML 以将以下内容添加到您的文本框定义中:
BorderThickness="0"
Background="{Binding RelativeSource={RelativeSource AncestorType=DataGridRow}, Path=Background}"
Run Code Online (Sandbox Code Playgroud)
这将使文本框继承您的数据网格背景属性。
祝你好运
归档时间: |
|
查看次数: |
955 次 |
最近记录: |