现在的位置: 首页 > 综合 > 正文

Silverlight DataGri列模版,行头图标模版,列头模版,多重表头,,编辑模版,样式

2013年09月10日 ⁄ 综合 ⁄ 共 38455字 ⁄ 字号 评论关闭

行头居中

 <!--头部居中-->
    <Style x:Key="DataGridHeaderStyle" TargetType="Primitives:DataGridColumnHeader">
        <Setter Property="HorizontalContentAlignment" Value="Center"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="Height" Value="25"/>
        <Setter Property="Padding" Value="11,0,0,0"/>
        <Setter Property="Background">
            <Setter.Value>
                <LinearGradientBrush StartPoint="1,0" >
                    <GradientStop Color="#F7F8F9" Offset="0.2"/>
                    <GradientStop Color="#DFE3E6" Offset="0.7"/>
                </LinearGradientBrush>
            </Setter.Value>
        </Setter>
    </Style>

 

 

单击不带边框

<!--列居左-->
    <Style x:Key="DataGridCellStyleLeft" TargetType="sdk:DataGridCell">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="sdk:DataGridCell">
                    <Grid>
                        <!--<VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="SelectionStates">
                                <VisualState x:Name="Unselected"/>
                                <VisualState x:Name="Selected"/>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>-->
                        <ContentPresenter x:Name="contentPresenter" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" HorizontalAlignment="Left" VerticalAlignment="Center" Margin="5,0,5,0"/>
                        <Rectangle Height="25" Width="1" Fill="#C9CACA" VerticalAlignment="Top" HorizontalAlignment="Right"/>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!--列居中-->
    <Style x:Key="DataGridCellStyleCenter" TargetType="sdk:DataGridCell">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="sdk:DataGridCell">
                    <Grid>
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="SelectionStates">
                                <VisualState x:Name="Unselected"/>
                                <VisualState x:Name="Selected"/>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <ContentPresenter x:Name="contentPresenter" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" HorizontalAlignment="Center" VerticalAlignment="Center" Margin="5,0,5,0"/>
                        <Rectangle Height="25" Width="1" Fill="#C9CACA" VerticalAlignment="Top" HorizontalAlignment="Right"/>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

    <!--列填充-->
    <Style x:Key="DataGridCellStyleStretch" TargetType="sdk:DataGridCell">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="sdk:DataGridCell">
                    <Grid>
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="SelectionStates">
                                <VisualState x:Name="Unselected"/>
                                <VisualState x:Name="Selected"/>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <ContentPresenter x:Name="contentPresenter" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" HorizontalAlignment="Stretch" VerticalAlignment="Stretch"/>
                        <Rectangle Height="25" Width="1" Fill="#C9CACA" VerticalAlignment="Top" HorizontalAlignment="Right"/>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    <!--列靠右-->
    <Style x:Key="DataGridCellStyleRight" TargetType="sdk:DataGridCell">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="sdk:DataGridCell">
                    <Grid>
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="SelectionStates">
                                <VisualState x:Name="Unselected"/>
                                <VisualState x:Name="Selected"/>
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <ContentPresenter x:Name="contentPresenter" ContentTemplate="{TemplateBinding ContentTemplate}" Content="{TemplateBinding Content}" HorizontalAlignment="Right" VerticalAlignment="Center" Margin="5,0,5,0"/>
                        <Rectangle Height="25" Width="1" Fill="#C9CACA" VerticalAlignment="Top" HorizontalAlignment="Right"/>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

 

 

 

<!--DataGrid头部图标样式Begin-->
    <Style x:Key="RowHeander" TargetType="sdk:DataGridRowHeader">
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate>
                    <Grid>
                        <Grid.Background>
                            <LinearGradientBrush StartPoint="1,0" >
                                <GradientStop Color="#F7F8F9" Offset="0.2"/>
                                <GradientStop Color="#DFE3E6" Offset="0.7"/>
                            </LinearGradientBrush>
                        </Grid.Background>
                        <Image Source="{Binding State,Mode=TwoWay,Converter={StaticResource RowEditBoolConverter}}" Width="15" Height="15"/>
                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    <!--DataGrid头部图标样式End-->

 

<!--多重表头单列上下布局,下右有列分割线(价格优惠)-->
    <Style x:Key="HaveColumnLineHeaderStyle" TargetType="sdk:DataGridColumnHeader" BasedOn="{StaticResource DataGridBaseHeaderStyle}">
        <Setter Property="Foreground" Value="#FF000000"/>
        <Setter Property="HorizontalContentAlignment" Value="Left"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="SeparatorBrush" Value="#FFC9CACA"/>
        <Setter Property="Padding" Value="8"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="sdk:DataGridColumnHeader">
                    <Grid x:Name="Root">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="20"/>
                            <RowDefinition Height="1"/>
                            <RowDefinition Height="20"/>
                        </Grid.RowDefinitions>
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundRectangle"
                                                    Storyboard.TargetProperty="(Fill).Color" To="#FF448DCA"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[3].Color" To="#7FFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[2].Color" To="#CCFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[1].Color" To="#F2FFFFFF"/>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundRectangle"
                                                    Storyboard.TargetProperty="(Fill).Color" To="#FF448DCA"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[0].Color" To="#D8FFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[1].Color" To="#C6FFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[2].Color" To="#8CFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[3].Color" To="#3FFFFFFF"/>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="SortStates">
                                <VisualState x:Name="Unsorted"/>
                                <VisualState x:Name="SortAscending" />
                                <VisualState x:Name="SortDescending" />
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Rectangle x:Name="BackgroundRectangle" Fill="#FF1F3B53" Stretch="Fill"  Grid.RowSpan="3"/>
                        <Rectangle x:Name="BackgroundGradient" Stretch="Fill" Grid.RowSpan="3">
                            <Rectangle.Fill>
                                <LinearGradientBrush EndPoint=".7,1" StartPoint=".7,0">
                                    <GradientStop Color="#FCFFFFFF" Offset="0.015"/>
                                    <GradientStop Color="#F7FFFFFF" Offset="0.375"/>
                                    <GradientStop Color="#E5FFFFFF" Offset="0.6"/>
                                    <GradientStop Color="#D1FFFFFF" Offset="1"/>
                                </LinearGradientBrush>
                            </Rectangle.Fill>
                        </Rectangle>

                        <Rectangle Fill="#FFC9CACA" VerticalAlignment="Stretch" Height="1"  HorizontalAlignment="Stretch" Grid.Row="1"/>
                        <ContentPresenter Content="{TemplateBinding Content}" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Center"/>

                        <Rectangle Fill="#FFC9CACA" VerticalAlignment="Stretch" Height="20" Width="1" HorizontalAlignment="Right" Grid.Row="2"/>

                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    <!--多重表头单列上下布局,下右没有列分割线(价格优惠)-->
    <Style x:Key="HaveNotColumnLineHeaderStyle" TargetType="sdk:DataGridColumnHeader" BasedOn="{StaticResource DataGridBaseHeaderStyle}">
        <Setter Property="Foreground" Value="#FF000000"/>
        <Setter Property="HorizontalContentAlignment" Value="Left"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="SeparatorBrush" Value="#FFC9CACA"/>
        <Setter Property="Padding" Value="8"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="sdk:DataGridColumnHeader">
                    <Grid x:Name="Root">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="20"/>
                            <RowDefinition Height="1"/>
                            <RowDefinition Height="20"/>
                        </Grid.RowDefinitions>
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundRectangle"
                                                    Storyboard.TargetProperty="(Fill).Color" To="#FF448DCA"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[3].Color" To="#7FFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[2].Color" To="#CCFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[1].Color" To="#F2FFFFFF"/>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundRectangle"
                                                    Storyboard.TargetProperty="(Fill).Color" To="#FF448DCA"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[0].Color" To="#D8FFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[1].Color" To="#C6FFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[2].Color" To="#8CFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[3].Color" To="#3FFFFFFF"/>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="SortStates">
                                <VisualState x:Name="Unsorted"/>
                                <VisualState x:Name="SortAscending" />
                                <VisualState x:Name="SortDescending" />
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Rectangle x:Name="BackgroundRectangle" Fill="#FF1F3B53" Stretch="Fill"  Grid.RowSpan="3"/>
                        <Rectangle x:Name="BackgroundGradient" Stretch="Fill" Grid.RowSpan="3">
                            <Rectangle.Fill>
                                <LinearGradientBrush EndPoint=".7,1" StartPoint=".7,0">
                                    <GradientStop Color="#FCFFFFFF" Offset="0.015"/>
                                    <GradientStop Color="#F7FFFFFF" Offset="0.375"/>
                                    <GradientStop Color="#E5FFFFFF" Offset="0.6"/>
                                    <GradientStop Color="#D1FFFFFF" Offset="1"/>
                                </LinearGradientBrush>
                            </Rectangle.Fill>
                        </Rectangle>

                        <Rectangle Fill="#FFC9CACA" VerticalAlignment="Stretch" Height="1"  HorizontalAlignment="Stretch" Grid.Row="1"/>
                        <ContentPresenter Content="{TemplateBinding Content}" Grid.Row="2" VerticalAlignment="Center" HorizontalAlignment="Center"/>

                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    <!--多重表头单列下左右布局(价格优惠)-->
    <Style x:Key="DownLeftRightHeaderStyle" TargetType="sdk:DataGridColumnHeader" BasedOn="{StaticResource DataGridBaseHeaderStyle}">
        <Setter Property="Foreground" Value="#FF000000"/>
        <Setter Property="HorizontalContentAlignment" Value="Left"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="SeparatorBrush" Value="#FFC9CACA"/>
        <Setter Property="Padding" Value="8"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="sdk:DataGridColumnHeader">
                    <Grid x:Name="Root">
                        <Grid.RowDefinitions>
                            <RowDefinition Height="20"/>
                            <RowDefinition Height="1"/>
                            <RowDefinition Height="20"/>
                        </Grid.RowDefinitions>
                        <Grid.ColumnDefinitions>
                            <ColumnDefinition Width="*"/>
                            <ColumnDefinition Width="1"/>
                            <ColumnDefinition Width="*"/>
                        </Grid.ColumnDefinitions>
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundRectangle"
                                                    Storyboard.TargetProperty="(Fill).Color" To="#FF448DCA"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[3].Color" To="#7FFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[2].Color" To="#CCFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[1].Color" To="#F2FFFFFF"/>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundRectangle"
                                                    Storyboard.TargetProperty="(Fill).Color" To="#FF448DCA"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[0].Color" To="#D8FFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[1].Color" To="#C6FFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[2].Color" To="#8CFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[3].Color" To="#3FFFFFFF"/>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="SortStates">
                                <VisualState x:Name="Unsorted"/>
                                <VisualState x:Name="SortAscending" />
                                <VisualState x:Name="SortDescending" />
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Rectangle x:Name="BackgroundRectangle" Fill="#FF1F3B53" Stretch="Fill" Grid.Column="0" Grid.Row="0" Grid.RowSpan="3" Grid.ColumnSpan="3"/>
                        <Rectangle x:Name="BackgroundGradient" Stretch="Fill" Grid.RowSpan="3" Grid.ColumnSpan="3" Grid.Column="0" Grid.Row="0">
                            <Rectangle.Fill>
                                <LinearGradientBrush EndPoint=".7,1" StartPoint=".7,0">
                                    <GradientStop Color="#FCFFFFFF" Offset="0.015"/>
                                    <GradientStop Color="#F7FFFFFF" Offset="0.375"/>
                                    <GradientStop Color="#E5FFFFFF" Offset="0.6"/>
                                    <GradientStop Color="#D1FFFFFF" Offset="1"/>
                                </LinearGradientBrush>
                            </Rectangle.Fill>
                        </Rectangle>

                        <ContentPresenter Content="{TemplateBinding Content}" Grid.Row="0" Grid.ColumnSpan="3" VerticalAlignment="Center" HorizontalAlignment="Center"/>

                        <Rectangle Fill="#FFC9CACA" VerticalAlignment="Stretch" Height="1"  HorizontalAlignment="Stretch" Grid.Row="1" Grid.ColumnSpan="3"/>
                        <TextBlock Text="单光价" VerticalAlignment="Center" HorizontalAlignment="Center" Grid.Row="2" Grid.Column="0"/>
                        <TextBlock Text="散光价" VerticalAlignment="Center" HorizontalAlignment="Center" Grid.Row="2" Grid.Column="2"/>

                        <Rectangle Fill="#FFC9CACA" VerticalAlignment="Stretch" Height="20" Width="1" Grid.Row="2" Grid.Column="1"/>
                        <Rectangle Fill="#FFC9CACA" VerticalAlignment="Stretch" Height="41" Width="1" HorizontalAlignment="Right" Grid.Row="0" Grid.RowSpan="3" Grid.ColumnSpan="3"/>
                        <Rectangle Fill="#FFC9CACA" VerticalAlignment="Stretch" Height="41" Width="1" HorizontalAlignment="Left" Grid.Row="0" Grid.RowSpan="3" Grid.ColumnSpan="3"/>

                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>
    <!--多重表头单列居中布局(价格优惠)-->
    <Style x:Key="CenterHeaderStyle" TargetType="sdk:DataGridColumnHeader" BasedOn="{StaticResource DataGridBaseHeaderStyle}">
        <Setter Property="Foreground" Value="#FF000000"/>
        <Setter Property="HorizontalContentAlignment" Value="Left"/>
        <Setter Property="VerticalContentAlignment" Value="Center"/>
        <Setter Property="IsTabStop" Value="False"/>
        <Setter Property="SeparatorBrush" Value="#FFC9CACA"/>
        <Setter Property="Padding" Value="8"/>
        <Setter Property="Template">
            <Setter.Value>
                <ControlTemplate TargetType="sdk:DataGridColumnHeader">
                    <Grid x:Name="Root">
                        <VisualStateManager.VisualStateGroups>
                            <VisualStateGroup x:Name="CommonStates">
                                <VisualState x:Name="Normal"/>
                                <VisualState x:Name="MouseOver">
                                    <Storyboard>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundRectangle"
                                                    Storyboard.TargetProperty="(Fill).Color" To="#FF448DCA"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[3].Color" To="#7FFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[2].Color" To="#CCFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[1].Color" To="#F2FFFFFF"/>
                                    </Storyboard>
                                </VisualState>
                                <VisualState x:Name="Pressed">
                                    <Storyboard>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundRectangle"
                                                    Storyboard.TargetProperty="(Fill).Color" To="#FF448DCA"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[0].Color" To="#D8FFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[1].Color" To="#C6FFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[2].Color" To="#8CFFFFFF"/>
                                        <ColorAnimation Duration="0"
                                                    Storyboard.TargetName="BackgroundGradient"
                                                    Storyboard.TargetProperty="(Fill).(GradientStops)[3].Color" To="#3FFFFFFF"/>
                                    </Storyboard>
                                </VisualState>
                            </VisualStateGroup>
                            <VisualStateGroup x:Name="SortStates">
                                <VisualState x:Name="Unsorted"/>
                                <VisualState x:Name="SortAscending" />
                                <VisualState x:Name="SortDescending" />
                            </VisualStateGroup>
                        </VisualStateManager.VisualStateGroups>
                        <Rectangle x:Name="BackgroundRectangle" Fill="#FF1F3B53" Stretch="Fill"/>
                        <Rectangle x:Name="BackgroundGradient" Stretch="Fill">
                            <Rectangle.Fill>
                                <LinearGradientBrush EndPoint=".7,1" StartPoint=".7,0">
                                    <GradientStop Color="#FCFFFFFF" Offset="0.015"/>
                                    <GradientStop Color="#F7FFFFFF" Offset="0.375"/>
                                    <GradientStop Color="#E5FFFFFF" Offset="0.6"/>
                                    <GradientStop Color="#D1FFFFFF" Offset="1"/>
                                </LinearGradientBrush>
                            </Rectangle.Fill>
                        </Rectangle>

                        <ContentPresenter Content="{TemplateBinding Content}" VerticalAlignment="Center" HorizontalAlignment="Center"/>

                    </Grid>
                </ControlTemplate>
            </Setter.Value>
        </Setter>
    </Style>

 

 

 

 

多重表头

<sdk:DataGrid x:Name="dgPriceFavorble" ItemsSource="{Binding CustomerFavorableSource,Mode=TwoWay}"  Grid.Column="2" Grid.Row="4" CanUserResizeColumns="True" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" GridLinesVisibility="Vertical" AutoGenerateColumns="False">
            <sdk:DataGrid.Columns>
                <!--选择-->
                <sdk:DataGridTemplateColumn CellStyle="{StaticResource DataGridCellStyleCenter}" HeaderStyle="{StaticResource HaveColumnLineHeaderStyle}" Header="选择" MinWidth="40" Width="Auto">
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <CheckBox HorizontalAlignment="Center" VerticalAlignment="Center" IsChecked="{Binding IsChecked,Mode=TwoWay}" Click="CheckBox_Click"/>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                </sdk:DataGridTemplateColumn>
                <!--供应商-->
                <sdk:DataGridTextColumn IsReadOnly="True"  HeaderStyle="{StaticResource HaveColumnLineHeaderStyle}" CellStyle="{StaticResource DataGridCellStyleLeft}" Header="供应商" Width="Auto" MinWidth="60" Binding="{Binding Path=VendorCodeName}"/>
                <!--品牌-->
                <sdk:DataGridTextColumn IsReadOnly="True"  HeaderStyle="{StaticResource HaveColumnLineHeaderStyle}" CellStyle="{StaticResource DataGridCellStyleLeft}" Header="品牌" Width="Auto" MinWidth="60" Binding="{Binding Path=Model.Brand}"/>
                <!--代号-->
                <sdk:DataGridTextColumn IsReadOnly="True"  HeaderStyle="{StaticResource HaveColumnLineHeaderStyle}" CellStyle="{StaticResource DataGridCellStyleLeft}" Header="代号" Width="Auto" MinWidth="60" Binding="{Binding Path=Model.ProductCode}"/>
                <!--中文名-->
                <sdk:DataGridTextColumn IsReadOnly="True"  HeaderStyle="{StaticResource HaveColumnLineHeaderStyle}" CellStyle="{StaticResource DataGridCellStyleLeft}" Header="中文名" Width="Auto" MinWidth="60" Binding="{Binding Path=Model.ProductCName}"/>
                <!--开始日期-->
                <sdk:DataGridTemplateColumn HeaderStyle="{StaticResource HaveColumnLineHeaderStyle}" MinWidth="60" Header="开始日期" Width="Auto">
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <TextBlock Margin="5,0,5,0" VerticalAlignment="Center" Text="{Binding Path=Model.StartDate,StringFormat=yyyy-MM-dd}" Foreground="{Binding Path=Model.StartDate,Mode=TwoWay,Converter={StaticResource ClickEditConverter}}"/>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                    <sdk:DataGridTemplateColumn.CellEditingTemplate>
                        <DataTemplate>
                            <sdk:DatePicker SelectedDateFormat="Long" Width="110" SelectedDate="{Binding Model.StartDate,Mode=TwoWay}" Height="25" VerticalAlignment="Center" HorizontalAlignment="Center"/>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellEditingTemplate>
                </sdk:DataGridTemplateColumn>
                <!--结束日期-->
                <sdk:DataGridTemplateColumn HeaderStyle="{StaticResource HaveNotColumnLineHeaderStyle}"  Header="结束日期" MinWidth="60" Width="Auto">
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <TextBlock Margin="5,0,5,0" VerticalAlignment="Center" Text="{Binding Path=Model.EndDate,StringFormat=yyyy-MM-dd}" Foreground="{Binding Path=Model.EndDate,Mode=TwoWay,Converter={StaticResource ClickEditConverter}}"/>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                    <sdk:DataGridTemplateColumn.CellEditingTemplate>
                        <DataTemplate>
                            <sdk:DatePicker SelectedDateFormat="Long" Width="110" SelectedDate="{Binding Path=Model.EndDate,Mode=TwoWay}" Height="25" VerticalAlignment="Center" HorizontalAlignment="Center"/>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellEditingTemplate>
                </sdk:DataGridTemplateColumn>
                <!--改价前-->
                <sdk:DataGridTemplateColumn HeaderStyle="{StaticResource DownLeftRightHeaderStyle}" CellStyle="{StaticResource DataGridCellStyleStretch}" Header="原价" MinWidth="120" Width="Auto">
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <Grid Margin="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="*"/>
                                    <ColumnDefinition Width="1"/>
                                    <ColumnDefinition Width="*"/>
                                </Grid.ColumnDefinitions>
                                <!--左边单光价-->
                                <TextBlock Text="{Binding Path=Model.SingleLightPrice,StringFormat='#,0.00'}" VerticalAlignment="Center" HorizontalAlignment="Left" Grid.Column="0" Margin="5,0,5,0"/>
                                <!--中间分割线-->
                                <Rectangle VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Grid.Column="1" Fill="#FFC9CACA"/>
                                <!--右边散光价-->
                                <TextBlock Text="{Binding Path=Model.AstigmatismPrice,StringFormat='#,0.00'}" VerticalAlignment="Center" HorizontalAlignment="Left" Grid.Column="2" Margin="5,0,5,0"/>
                            </Grid>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                </sdk:DataGridTemplateColumn>
                <!--优惠-->
                <sdk:DataGridTemplateColumn HeaderStyle="{StaticResource CenterHeaderStyle}"  Header="优惠幅度" MinWidth="60" Width="Auto">
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <TextBlock Text="{Binding Path=FavorableShowText}" VerticalAlignment="Center" Margin="5,0,5,0"/>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                    <sdk:DataGridTemplateColumn.CellEditingTemplate>
                        <DataTemplate>
                            <Grid>
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="*"/>
                                    <ColumnDefinition Width="*"/>
                                </Grid.ColumnDefinitions>
                                <TextBox Grid.Column="0" Width="40" Text="{Binding Path=Favorable,Mode=TwoWay}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch"/>
                                <ComboBox Grid.Column="1" SelectedValue="{Binding Path=SignID,Mode=TwoWay}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" DataContextChanged="ComboBox_DataContextChanged"/>
                            </Grid>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellEditingTemplate>
                </sdk:DataGridTemplateColumn>
                <!--改价后-->
                <sdk:DataGridTemplateColumn HeaderStyle="{StaticResource DownLeftRightHeaderStyle}"  Header="优惠价" MinWidth="120" Width="Auto">
                    <sdk:DataGridTemplateColumn.CellTemplate>
                        <DataTemplate>
                            <Grid>
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="*"/>
                                    <ColumnDefinition Width="1"/>
                                    <ColumnDefinition Width="*"/>
                                </Grid.ColumnDefinitions>
                                <!--左边单光价-->
                                <TextBlock Text="{Binding Path=NewSingleLightPrice,StringFormat='#,0.00'}" VerticalAlignment="Center" Grid.Column="0" Margin="5,0,5,0"/>
                                <!--中间分割线-->
                                <Rectangle VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Grid.Column="1" Fill="#FFC9CACA"/>
                                <!--右边散光价-->
                                <TextBlock Text="{Binding Path=NewAstigmatismPrice,StringFormat='#,0.00'}" VerticalAlignment="Center" Grid.Column="2" Margin="5,0,5,0"/>
                            </Grid>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellTemplate>
                    <sdk:DataGridTemplateColumn.CellEditingTemplate>
                        <DataTemplate>
                            <Grid  Margin="0" VerticalAlignment="Stretch" HorizontalAlignment="Stretch">
                                <Grid.ColumnDefinitions>
                                    <ColumnDefinition Width="*"/>
                                    <ColumnDefinition Width="1"/>
                                    <ColumnDefinition Width="*"/>
                                </Grid.ColumnDefinitions>
                                <!--左边单光-->
                                <TextBox Text="{Binding Path=NewSingleLightPrice,Mode=TwoWay}" VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Grid.Column="0"/>
                                <!--中间分割线-->
                                <Rectangle VerticalAlignment="Stretch" HorizontalAlignment="Stretch" Grid.Column="1" Fill="#FFC9CACA"/>
                                <!--右边散光-->
                                <TextBox Text="{Binding Path=NewAstigmatismPrice,Mode=TwoWay}" VerticalAlignment="Center" Grid.Column="2"/>
                            </Grid>
                        </DataTemplate>
                    </sdk:DataGridTemplateColumn.CellEditingTemplate>
                </sdk:DataGridTemplateColumn>
            </sdk:DataGrid.Columns>
        </sdk:DataGrid>

 

抱歉!评论已关闭.