Silverlight 4.0 在datagrid、silverlight 4中设置行样式
我正在尝试更改datagrid的行样式,以便在选择行时更改背景颜色(不是行背景,而是选择矩形的颜色,默认情况下,该矩形对于我的应用程序来说有点太亮)。然而,我在将样式应用于网格时看到的行为是,所有行都像折叠的百叶窗一样收缩在一起。这就是我写的风格:Silverlight 4.0 在datagrid、silverlight 4中设置行样式,silverlight-4.0,datagrid,coding-style,Silverlight 4.0,Datagrid,Coding Style,我正在尝试更改datagrid的行样式,以便在选择行时更改背景颜色(不是行背景,而是选择矩形的颜色,默认情况下,该矩形对于我的应用程序来说有点太亮)。然而,我在将样式应用于网格时看到的行为是,所有行都像折叠的百叶窗一样收缩在一起。这就是我写的风格: <Style x:Key="DataGridRowStyle" TargetType="sdk:DataGridRow"> <Setter Property="Template">
<Style x:Key="DataGridRowStyle" TargetType="sdk:DataGridRow">
<Setter Property="Template">
<Setter.Value>
<ControlTemplate TargetType="sdk:DataGridRow">
<sdk:DataGrid>
<VisualStateManager.VisualStateGroups>
<VisualStateGroup x:Name="CommonStates">
<VisualState x:Name="Normal Selected">
<Storyboard>
<ColorAnimation
Storyboard.TargetName="ButtonBrush"
Storyboard.TargetProperty="Color"
To="Red" />
</Storyboard>
</VisualState>
</VisualStateGroup>
</VisualStateManager.VisualStateGroups>
</sdk:DataGrid>
</ControlTemplate>
</Setter.Value>
</Setter>
</Style>
有人能告诉我这是怎么回事吗?我还没有真正理解视觉状态是如何工作的,只是在黑暗中拍摄
感谢检查DataGrid()的模板背景色(蓝色)在模板中是硬编码的。选中该行时,所发生的一切是矩形变为可见(不透明度=1)。遗憾的是,您必须重新设置整个DataGridRow的模板。。。在提供的链接中,您将找到所有可能需要的信息 在模板中查找以下代码:
这个链接非常有用。我为datagridrow使用了整个控件模板,并更改了与正常选定状态相关的部分,它似乎工作正常。非常感谢。