c# - 如何从数据网格突出显示的行中删除缩进?
问题描述
我想知道如何DataGrid
从选定(突出显示)行中删除此缩进。
我试图将边距和填充设置为零,我尝试了很多其他的东西但没有成功。
请问,有人知道该怎么做吗?
这是我的 xaml 的关键部分:
<DataGrid Grid.Row="0" Height="200" Width="1000" Name="dataGrid1" AutoGenerateColumns="false"
ItemsSource="{Binding RecordsToShow}" Margin="10,359,329,10">
<DataGrid.Resources>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightBrushKey}" Color="{x:Static Colors.Transparent}"/>
<SolidColorBrush x:Key="{x:Static SystemColors.HighlightTextBrushKey}" Color="Black"/>
<SolidColorBrush x:Key="{x:Static SystemColors.ControlBrushKey}" Color="{x:Static Colors.Transparent}"/>
</DataGrid.Resources>
<DataGrid.RowStyle>
<Style TargetType="DataGridRow">
<Style.Triggers>
<DataTrigger Binding="{Binding State}" Value="UNCHECKED">
<Setter Property="Background" Value="White"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding State}" Value="CHECKED">
<Setter Property="Background" Value="LimeGreen"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding State}" Value="UNRESOLVED_MISTAKE">
<Setter Property="Background" Value="Red"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding State}" Value="UFO">
<Setter Property="Background" Value="DarkGreen"></Setter>
</DataTrigger>
<Trigger Property="IsSelected" Value="true">
<Setter Property="BorderBrush" Value="Turquoise" />
<Setter Property="BorderThickness" Value="3"/>
<Setter Property="Padding" Value="0 0 0 0"/>
<Setter Property="Margin" Value="0 0 0 0"/>
</Trigger>
</Style.Triggers>
</Style>
</DataGrid.RowStyle>
<DataGrid.Columns>
<DataGridTemplateColumn IsReadOnly="True" Header="Obrázek" Width="*">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<Image Source="{Binding ProductPhoto}" />
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
<DataGridTextColumn IsReadOnly="True" Header="Číslo" Binding="{Binding NomenclatureCode}" Width="*"/>
<DataGridTextColumn IsReadOnly="True" Header="Název" Binding="{Binding NomenclatureDescription}" Width="*"/>
<DataGridTextColumn IsReadOnly="True" Header="Velikost" Binding="{Binding SizeCode}" Width="*"/>
<DataGridTextColumn IsReadOnly="True" Header="Počet" Binding="{Binding Quantity}" Width="*"/>
<DataGridTextColumn IsReadOnly="True" Header="Chyba" Binding="{Binding Mistakes}" Width="*"/>
</DataGrid.Columns>
</DataGrid>
解决方案
将RowHeaderWidth
属性设置为0
应该完全摆脱缩进:
<DataGrid ... RowHeaderWidth="0">
您可能还想在您的中指定负的左右边距Style
以删除所选行的缩进:
<Style TargetType="DataGridRow">
<Style.Triggers>
<DataTrigger Binding="{Binding State}" Value="UNCHECKED">
<Setter Property="Background" Value="White"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding State}" Value="CHECKED">
<Setter Property="Background" Value="LimeGreen"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding State}" Value="UNRESOLVED_MISTAKE">
<Setter Property="Background" Value="Red"></Setter>
</DataTrigger>
<DataTrigger Binding="{Binding State}" Value="UFO">
<Setter Property="Background" Value="DarkGreen"></Setter>
</DataTrigger>
<Trigger Property="IsSelected" Value="true">
<Setter Property="BorderBrush" Value="Turquoise" />
<Setter Property="BorderThickness" Value="3"/>
<Setter Property="Padding" Value="0 0 0 0"/>
<Setter Property="Margin" Value="-3 0 -3 0"/>
</Trigger>
</Style.Triggers>
</Style>
推荐阅读
- amazon-web-services - 使用 aws fargate 的 HTTPS 路由太慢
- angular - 在材质树的根节点上添加背景颜色
- shell - 如何使用命令 sed 删除空格
- angular - 将带有 POST/PUT/PATCH 请求的有效负载数据发送到 Sentry.io
- c++ - 如何在交叉编译到 Raspberry Pi 时在 Visual Studio 中添加包含目录?
- jquery - 如何使用 ajax 成功的 .html() 插入标签?
- centos7 - 升级到 CentOS7 后 PMwiki 不再工作
- django - 如何修复“Django 测试 setUp() 函数未创建 django 用户”?
- haskell - Haskell中有任何Atom数据类型吗?
- reactjs - 无法在另一个组件上显示搜索的输出