我的DataGridTemplateColumn中有一个StackPanel。我似乎无法找到一种方法来移除此单元格顶部的边距。
这是我正在使用的代码:
<DataGridTemplateColumn IsReadOnly="True" Header="Description">
<DataGridTemplateColumn.CellTemplate>
<DataTemplate>
<StackPanel>
<StackPanel.Resources>
<Style TargetType="{x:Type Label}">
<Setter Property="FrameworkElement.Margin" Value="0,0,0,-10" />
</Style>
</StackPanel.Resources>
<Label Content="{Binding Description1}" />
<Label Content="{Binding Description2}" />
</StackPanel>
</DataTemplate>
</DataGridTemplateColumn.CellTemplate>
</DataGridTemplateColumn>
边距似乎来自DataGridTemplateColumn本身而不是StackPanel,因为只有第一个Label的间距高于它。
答案 0 :(得分:0)
保证金实际上在Labels
,而不是StackPanel
。只需删除将底部边距设置为负的标签样式,它就能正常工作。
在渲染对象后似乎会应用负边距,并且可以使控件移出现有的边界集。在您的情况下,正在渲染Labels
,然后两者都向下移动10px