XamDataGrid层次网格的蒙版子表 [英] Masking child table of XamDataGrid Hierarchical Grid

查看:78
本文介绍了XamDataGrid层次网格的蒙版子表的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

首先这是我的结构

  • 第1层> <Objects>

第2层->每个Object内都有另一个Objects集合

layer 2-->Each Object has another collection of Objects inside of it

所需结果:

  • 第一个集合显示在数据网格中,旁边带有一个扩展器
  • 在每行的扩展器下,存在与所选第1层相关的第二个对象集合

我成功折叠了第1层上不需要的字段.

I am successfully collapsing the unwanted fields on layer 1.

但是,当您单击扩展器图标以查看来自第1层的所选对象的第二层时,您会看到从该对象动态生成的所有字段.

However, when you click the expander icon to view layer two on the selected object from layer 1 you see all of the fields that are dynamically generated from the object.

问题:如何隐藏第2层的字段

Question: How do you hide the fields of layer 2

<igWPF:XamDataGrid Theme="IGTheme" DataSource="{Binding layer1Collection}">                          
  <igWPF:XamDataGrid.FieldLayouts>
      <igWPF:FieldLayout>
        <igWPF:FieldLayout.Fields>
           <igWPF:Field Name="val1" Visibility="Collapsed"/>
           <igWPF:Field Name="val2" Visibility="Collapsed"/>                                        
           <igWPF:Field Name="val3" Visibility="Collapsed"/>
           <igWPF:Field Name="val4" Visibility="Collapsed"/>
           <igWPF:Field Name="val5" Visibility="Collapsed"/>
           <igWPF:Field Name="val6" Visibility="Collapsed"/>
           <igWPF:Field Name="val7" Visibility="Collapsed"/>
           <igWPF:Field Name="val8" Visibility="Visible"/>
           <igWPF:Field Name="val9" Visibility="Visible"/>

           <!-- This is where the second layer is-->
             <igWPF:Field Name="val10" Visibility="Visible" IsExpandable="True" Label="Details" IsSelected="True" IsPrimary="True" />                             


       </igWPF:FieldLayout.Fields>
     </igWPF:FieldLayout>
  </igWPF:XamDataGrid.FieldLayouts>
 </igWPF:XamDataGrid>

推荐答案

为了掩盖子网格,您必须创建第二个字段布局,并将它们像这样绑在一起...

In order to mask the child grid you must create a second field layout and tie them together like this...

<igWPF:XamDataGrid.FieldLayouts>
  <igWPF:FieldLayout Key="layer1">
    <igWPF:FieldLayout.Fields>
       <igWPF:Field Name="val1" Visibility="Collapsed"/>
       <igWPF:Field Name="val2" Visibility="Collapsed"/>                                        
       <igWPF:Field Name="val3" Visibility="Collapsed"/>
       <igWPF:Field Name="val4" Visibility="Collapsed"/>
       <igWPF:Field Name="val5" Visibility="Collapsed"/>
       <igWPF:Field Name="val6" Visibility="Collapsed"/>
       <igWPF:Field Name="val7" Visibility="Collapsed"/>
       <igWPF:Field Name="val8" Visibility="Visible"/>
       <igWPF:Field Name="val9" Visibility="Visible"/>

       <!-- This is where the second layer is-->
         <igWPF:Field Name="details" Visibility="Visible" IsExpandable="True" Label="Details" IsSelected="True" IsPrimary="True" />                             


   </igWPF:FieldLayout.Fields>
 </igWPF:FieldLayout>
 <igWPF:FieldLayout Key="Detail" ParentFieldName="details" ParentFieldLayoutKey="layer1">
        <igWPF:FieldLayout.Fields>
              <igWPF:Field Name="L2val1" Label="L2val"/>
              <igWPF:Field Name="L2val2" Label="L2val"/>
              <igWPF:Field Name="L2val3" Label="L2val"/>
              <igWPF:Field Name="L2val4" Label="L2val"/>
              <igWPF:Field Name="L2val" Visibility="Collapsed"/>
         </igWPF:FieldLayout.Fields>
     </igWPF:FieldLayout>
  </igWPF:XamDataGrid.FieldLayouts>

这篇关于XamDataGrid层次网格的蒙版子表的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆