none
RC版DataGrid 中Header有bug? RRS feed

  • 问题

  •  

     原先的程序跑不起来了。

     

     <DataBig SmileataGridTemplateColumn Width="Auto" Header="vipUser">
                             
                              <!--  注释掉DataGridTemplateColumn.Header就能运行了,header中不管定义的元素有多简单都报错
                            <DataBig SmileataGridTemplateColumn.Header>

                                <StackPanel  Orientation="Horizontal"  Margin="2,0,0,0" ToolTipService.ToolTip="VIP User" HorizontalAlignment="Center"
                                            VerticalAlignment="Center">
                                    <Image Source="/assets/vipUserGray.png"  Margin="5,4,0,0" Tag="Vip"  MouseLeftButtonDown="Order"  Cursor="Hand" />
                                    <Image Width="13" />
                                </StackPanel>        
                                   
                            </DataBig SmileataGridTemplateColumn.Header>-->

    请问是RC版的bug吗?还是我忽略了什么属性。谢谢
    2008年10月9日 1:33

答案

全部回复

  • 用RTW试一下吧………

    My blog: http://blog.csdn.net/dotfun http://dotfun.cnblogs.com

    My contact: QQ:372900288 E-mail:372900288@qq.com msn:sellnet007@hotmail.com

    2009年2月16日 5:14
    版主
  • 正式版之后,DataGrid已经单独发布过补丁的
    孟宪会
    2009年2月16日 10:36
    版主
  •  SL2 RTW的时候 DataGrid ColumnHeader默认不再支持UIElement. 只支持String.  December Release也是同样的。

    当然,如果你真的需要,也是可以的,只是麻烦一些,需要通过重设Style来实现。
    如:
                 <data:DataGridTextColumn.HeaderStyle>
                            <Style TargetType="localprimitives:DataGridColumnHeader">
                                <Style.Setters>
                                    <Setter Property="Template">
                                        <Setter.Value>
                                            <ControlTemplate TargetType="localprimitives:DataGridColumnHeader">
                                                    <StackPanel  Orientation="Horizontal"  Margin="2,0,0,0" ToolTipService.ToolTip="VIP User" HorizontalAlignment="Center"  VerticalAlignment="Center">
                                                            <Image Source="/assets/vipUserGray.png"  Margin="5,4,0,0" Tag="Vip"  MouseLeftButtonDown="Order"  Cursor="Hand" />
                                                            <Image Width="13" />
                                                    </StackPanel>         

                                            </ControlTemplate>
                                        </Setter.Value>
                                    </Setter>
                                </Style.Setters>
                            </Style>
                        </data:DataGridTextColumn.HeaderStyle>

    这么做就会丢失默认的一些Style和Visual States, 比如Sorting. Mouse Over..., 不过你可以 自己增加。
    2009年3月3日 7:44