none
讨论个问题,关于datagrid RRS feed

  • 问题

  • 如何在datagrid 里面 实现子datagrid,而且 父grid 列头(table1_name,table1_userinfo),子grid 列头(table2_textinfo,table2_age) ,请各位大侠 不吝赐教.

    效果就象 行细节模板 产生的效果

    • 已编辑 大水牛 2009年8月19日 9:19 少写
    2009年8月19日 9:17

答案

  • 这涉及到一个命名范围的问题
    你在DataGrid的Template里面再定义一个DataGrid,这个DataGrid2是存在为一个新的命名范围当中的,在原有的命名范围里是无法直接访问这个新命名范围内的东西的。
    可以参考下下面方法:

    <Button x:Name="btn" >

             <Button.Template>

                       <ControlTemplate TargetType="Button">

                                <Rectangle x:Name="rect" Fill="Aqua"/>

                       </ControlTemplate>

             </Button.Template>

    </Button>


    private void rect_Loaded(object sender, RoutedEventArgs e)

    {

             this.rect = (Rectangle)sender;

    }

     给这个新的命名范围内的控件添加Loaded事件,在原命名范围中将其引用出来。


    如果您觉得对您有帮助,请在“是否有帮助”点“是”;如果你觉得回复很满意,请“标记为已解答”
    • 已标记为答案 大水牛 2009年9月4日 7:38
    2009年8月27日 7:00
    版主

全部回复

  • 不是很清楚你想要什么样的效果。
    试试定义TemplateColumn,在CellTemplate里定义子DataGrid?

    2009年8月19日 16:27
  • 在 celltemplate 里面定义datagird ,那么这个 datagird能被 访问到嘛?
    2009年8月27日 2:08
  • 您说的"能访问到"是指的什么?

    2009年8月27日 4:54
  • 在在 celltemplate 里面定义datagird  , 怎么样才能 设置或读取 他的值呢
    2009年8月27日 6:29
  • 这涉及到一个命名范围的问题
    你在DataGrid的Template里面再定义一个DataGrid,这个DataGrid2是存在为一个新的命名范围当中的,在原有的命名范围里是无法直接访问这个新命名范围内的东西的。
    可以参考下下面方法:

    <Button x:Name="btn" >

             <Button.Template>

                       <ControlTemplate TargetType="Button">

                                <Rectangle x:Name="rect" Fill="Aqua"/>

                       </ControlTemplate>

             </Button.Template>

    </Button>


    private void rect_Loaded(object sender, RoutedEventArgs e)

    {

             this.rect = (Rectangle)sender;

    }

     给这个新的命名范围内的控件添加Loaded事件,在原命名范围中将其引用出来。


    如果您觉得对您有帮助,请在“是否有帮助”点“是”;如果你觉得回复很满意,请“标记为已解答”
    • 已标记为答案 大水牛 2009年9月4日 7:38
    2009年8月27日 7:00
    版主