DevExpress控件使用交流,DevExpress中国社区Dev联系电话 联系电话:023-68661681

DevExpress WPF在线示例:如何创建具有不同列集的细节网格

来源:   发布时间:2018-04-17   浏览:714次

从17.2开始,您可以使用DetailDescriptorSelector为主行选择不同的详细信息。 您可以在如何根据GridControl的主行中的数据使用不同的详细信息中找到示例项目。

DetailDescriptorSelector Class

使您可以选择要在数据相关详细信息中使用的详细信息描述符。

Syntax

public class DetailDescriptorSelector : MultiDetailDescriptorBase
Public Class DetailDescriptorSelector Inherits MultiDetailDescriptorBase

Remarks

GridControl允许您通过以下方式在XAML中定义一个简单的详细信息选择逻辑(使用DetailDescriptorSelector对象):

  1. 将DetailDescriptorSelector对象传递给GridControl.DetailDescriptor属性。
    <dxg:GridControl ItemsSource="{x:Static local:ViewModel.Employees}">
        <dxg:GridControl.DetailDescriptor>
            <dxg:DetailDescriptorSelector>
                <!-- DetailDescriptorSelector -->
            </dxg:DetailDescriptorSelector>
        </dxg:GridControl.DetailDescriptor>
    </dxg:GridControl>
  2. 当满足相应的触发条件时,DetailDescriptorSelector选择详细描述符。

    下面的代码示例演示了如何提供为满足特定条件的主行选择的详细描述符(在此示例中为Employees.Count == 0)。
    <dxg:GridControl ItemsSource="{x:Static local:ViewModel.Employees}">
        <dxg:GridControl.DetailDescriptor>
            <dxg:DetailDescriptorSelector>
                <!-- A detail descriptor selected for master rows, whose Employees.Count value is equal to 0 -->
                <dxg:DetailDescriptorTrigger Binding="{Binding Path=Employees.Count}" Value="0">
                    <dxg:DataControlDetailDescriptor ItemsSourcePath="Customers">
                        <dxg:GridControl>
                            <!-- The detail GridControl settings -->
                        </dxg:GridControl>
                    </dxg:DataControlDetailDescriptor>
                </dxg:DetailDescriptorTrigger>
            </dxg:DetailDescriptorSelector>
        </dxg:GridControl.DetailDescriptor>
        <!-- The master GridControl settings -->
    </dxg:GridControl>
  3. 要提供默认详细信息描述符,请将带有已配置详细信息GridControl的DetailDescriptorSelector传递给DefaultValue属性。
    <dxg:GridControl ItemsSource="{x:Static local:ViewModel.Employees}">
        <dxg:GridControl.DetailDescriptor>
            <dxg:DetailDescriptorSelector>
    
                <!-- The default detail descriptor -->
                <dxg:DetailDescriptorSelector.DefaultValue>
                    <dxg:DataControlDetailDescriptor ItemsSourcePath="Employees">
                        <dxg:GridControl>
                            <!-- The default detail GridControl settings -->
                        </dxg:GridControl>
                    </dxg:DataControlDetailDescriptor>
                </dxg:DetailDescriptorSelector.DefaultValue>            
    
                <!-- A detail descriptor selected for master rows, whose Employees.Count value is equal to 0 -->
                <dxg:DetailDescriptorTrigger Binding="{Binding Path=Employees.Count}" Value="0">
                    <dxg:DataControlDetailDescriptor ItemsSourcePath="Customers">
                        <dxg:GridControl>
                            <!-- The detail GridControl settings -->
                        </dxg:GridControl>
                    </dxg:DataControlDetailDescriptor>
                </dxg:DetailDescriptorTrigger>
    
            </dxg:DetailDescriptorSelector>
        </dxg:GridControl.DetailDescriptor>
        <!-- The master GridControl settings -->
    </dxg:GridControl>

买 DevExpress Universal Subscription  免费赠 万元汉化资源包1套!

限量15套!先到先得,送完即止!立即抢购>>

本站文章除注明转载外,均为本站原创或翻译
欢迎任何形式的转载,但请务必注明出处,尊重他人劳动成果
转载请注明:文章转载自:DevExpress控件中文网 [https://www.devexpresscn.com/]
本文地址:https://www.devexpresscn.com/post/1127.html

相关产品: DevExpress Universal Subscription,


联系我们
  • 重庆总部 023-68661681 400-700-1020
  • 北京公司 010-56705895
购买
  • sales@evget.com
合作
  • business@evget.com