DevExpress控件使用交流,DevExpress中国社区 售前咨询
当前位置: 首页 > 开发资源 » 使用教程 » 如何显示DevExpress AgDataGrid for WPF中的主从数据?

如何显示DevExpress AgDataGrid for WPF中的主从数据?

作者:zhuhm   来源:本站原创   浏览:Loading...次   发布时间:2012-08-02   评论:0条

尽管当前的DevExpress AgDataGrid 不具有内置的主从数据支持,但是你可以通过grid 控件的PreviewTemplate来显示数据的详细信息。将AgDataGrid控件添加到master grid的PreviewTemplate,然后将其绑定到detail collection。

接下来我们一起来看一个简单的例子:

[C#]

public class Product {

public int ProductID { get; set; }

public string ProductName { get; set; }

public int CategoryID { get; set; }

public decimal UnitPrice { get; set; }

}

public class Category {

public int CategoryID { get; set; }

public string CategoryName { get; set; }

public string Description { get; set; }

public List<Products> Products { get; set; }

以分层方式来显示数据,需根据以下步骤:

1)在页面中添加AgDataGrid 控件

[XAML]

<Grid x:Name="LayoutRoot">

<grid:AgDataGrid x:Name="masterGrid" ColumnsAutoWidth="True">

<grid:AgDataGrid.Columns>

<grid:AgDataGridColumn FieldName="CategoryID"/>

<grid:AgDataGridColumn FieldName="CategoryName"/>

<grid:AgDataGridColumn FieldName="Description"/>

</grid:AgDataGrid.Columns>

</grid:AgDataGrid>

</Grid>

接下来将AgDataGrid控件绑定到分类中:

[C#]

public MainPage() {

InitializeComponent();

masterGrid.DataSource = CategoriesData.DataSource;

}

这就是master grid。

2)定义master grid的PreviewTemplate,并新增AgDataGrid控件:

[XAML]

<grid:AgDataGrid.PreviewTemplate>

<DataTemplate>

<Grid Height="180" Margin="20, 10, 20, 10">

<controls:TabControl>

<controls:TabItem Header="Products">

<grid:AgDataGrid x:Name="detailGrid">

</grid:AgDataGrid>

</controls:TabItem>

</controls:TabControl>

</Grid>

</DataTemplate>

</grid:AgDataGrid.PreviewTemplate>

3)将AgDataGrid绑定到产品属性:

[XAML]

<grid:AgDataGrid.PreviewTemplate>

<DataTemplate>

<Grid Height="180" Margin="20, 10, 20, 10">

<controls:TabControl>

<controls:TabItem Header="Products">

<grid:AgDataGrid x:Name="detailGrid" DataSource="{Binding Products}" ColumnsAutoWidth="True">

<grid:AgDataGrid.Columns>

<grid:AgDataGridColumn FieldName="ProductID" />

<grid:AgDataGridColumn FieldName="ProductName" />

<grid:AgDataGridColumn FieldName="CategoryID" />

<grid:AgDataGridColumn FieldName="UnitPrice" />

</grid:AgDataGrid.Columns>

</grid:AgDataGrid>

</controls:TabItem>

</controls:TabControl>

</Grid>

</DataTemplate>

</grid:AgDataGrid.PreviewTemplate>

4)设置master grid的PreviewVisibility属性值为ExpandedForFocusedRow,

[XAML]

<grid:AgDataGrid x:Name="masterGrid" ColumnsAutoWidth="True" PreviewVisibility="ExpandedForFocusedRow">

运行代码后的结果如下:

 DevExpress,AgDataGrid控件,主从数据,grid 控件,masterGrid

 

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

关键字: DevExpress 

相关产品: DXperience Universal Subscription

评论列表

暂无评论

请谈谈你的看法 请使用IE或者Firefox浏览器,暂不支持Chrome!

昵称 不填则默认为游客评论

DevExpress DXperience DXv2 v12

DevExpress DXperience 下载 download

DevExpress购买、价格、授权

慧都控件网为DevExpress界面控件的中国地区唯一正式授权经销商,正版控件销售公司,授权代理商,经销商及合作伙伴。

电话:400-700-1020
        023-66090381

邮箱:sales@evget.com

>>如何选择正规控件购买渠道