Silverlight 4.0中的DataGrid标头样式
我想像下面的链接一样设置datagrid的标题。 我在代码中使用了DataGridColumnHeadersPresenter。 请参阅我的以下代码:Silverlight 4.0中的DataGrid标头样式,silverlight,silverlight-4.0,silverlight-3.0,silverlight-5.0,Silverlight,Silverlight 4.0,Silverlight 3.0,Silverlight 5.0,我想像下面的链接一样设置datagrid的标题。 我在代码中使用了DataGridColumnHeadersPresenter。 请参阅我的以下代码: <Style x:Key="XYZ" TargetType="sdk:DataGridColumnHeadersPresenter" > <Setter Property="Template"> <Setter.Value> &l
<Style x:Key="XYZ" TargetType="sdk:DataGridColumnHeadersPresenter" >
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="sdk:DataGridRowGroupHeader">
<Border x:Name="ButtonBorder"
CornerRadius="0,0,0,0"
BorderThickness="0"
BorderBrush="Transparent">
<Border.Background>
<LinearGradientBrush StartPoint="0,0" EndPoint="1">
<GradientBrush.GradientStops>
<GradientStopCollection>
<GradientStop Color="#555" Offset="0.0"/>
<GradientStop Color="#000" Offset="0.8"/>
</GradientStopCollection>
</GradientBrush.GradientStops>
</LinearGradientBrush>
</Border.Background>
<ItemsPresenter/>
</Border>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
<Style x:Key="BreakGridStyle" TargetType="sdk:Datagird">
<Setter Property="HeadersVisibility" Value="Column" />
<Setter Property="AutoGenerateColumns" Value="False" />
<Setter Property="Width" Value="Auto" />
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="sdk:DataGrid">
<Grid>
<StackPanel>
<sdk:DataGridColumnHeadersPresenter Name="ABC" Style="{StaticResource XYZ}" />
<ItemsPresenter/>
</StackPanel>
</Grid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
但我得到了以下错误:
在类型System.Windows.Controls.Primitives.DataGridColumnHeadersPresenter中找不到属性“Template”
如何解决此问题以及如何实现我的datagrid的列样式,如上面链接中所示
BreakGridStyle
中的TargetType
设置为sdk:datagrid
。这仅仅是一个输入错误,还是您的代码中也有?在Silverlight中,DataGridColumnHeadersPresenter
不支持模板
属性;这就是为什么您会收到错误消息。请参阅。感谢您的回复。如果DataGridColumnHeadersPresenter不支持模板,那么是否有其他方法可以按照上述链接获取列标题样式?如果您只需要外观,而不需要DataGrid的其他功能,您可以使用HeaderEditMsControl轻松实现这一点。