or
<UserControl x:Class="SilverlightApplication1.MainPage" xmlns:d="http://schemas.microsoft.com/expression/blend/2008" xmlns:mc="http://schemas.openxmlformats.org/markup-compatibility/2006" mc:Ignorable="d" d:DesignWidth="640" d:DesignHeight="480" xmlns:telerikGrid="clr-namespace:Telerik.Windows.Controls;assembly=Telerik.Windows.Controls.GridView"> <Grid x:Name="LayoutRoot"> <telerikGrid:RadGridView x:Name="RadGridView1" ItemsSource="{Binding}" AutoGenerateColumns="False"> <telerikGrid:RadGridView.ChildTableDefinitions> <telerikGrid:GridViewTableDefinition/> </telerikGrid:RadGridView.ChildTableDefinitions> <telerikGrid:RadGridView.Columns> <telerikGrid:GridViewDataColumn Header="ID" DataMemberBinding="{Binding ID}"/> <telerikGrid:GridViewDataColumn Header="Name" DataMemberBinding="{Binding Name}"/> </telerikGrid:RadGridView.Columns> <telerikGrid:RadGridView.HierarchyChildTemplate> <DataTemplate> <telerikGrid:RadGridView x:Name="SubGrid" DataLoading="SubGrid_DataLoading" AutoGenerateColumns="False" ItemsSource="{Binding Items}"> </telerikGrid:RadGridView> </DataTemplate> </telerikGrid:RadGridView.HierarchyChildTemplate> </telerikGrid:RadGridView> </Grid></UserControl>using System;using System.Collections.Generic;using System.Linq;using System.Net;using System.Windows;using System.Windows.Controls;using System.Windows.Documents;using System.Windows.Input;using System.Windows.Media;using System.Windows.Media.Animation;using System.Windows.Shapes;using System.Windows.Data;using Telerik.Windows.Controls;using System.Collections.ObjectModel;using Telerik.Windows.Data;using Telerik.Windows.Controls.GridView;namespace SilverlightApplication1{ public partial class MainPage : UserControl { public MainPage() { InitializeComponent(); DataContext = from i in Enumerable.Range(0, 10) select new MyObject() { ID = i, Name = String.Format("Name{0}", i) }; } public class MyObject { public int ID { get; set; } public string Name { get; set; } public IEnumerable<MyObject2> Items { get { return from i in Enumerable.Range(0, 10) select new MyObject2() { x = i }; } } } public class MyObject2 { public int x { set; get; } public IEnumerable<MyObject2> Items { get { return from i in Enumerable.Range(0, 10) select new MyObject2() { x = i }; } } } private void SubGrid_DataLoading(object sender, GridViewDataLoadingEventArgs e) { var grid = (GridViewDataControl)sender; var d = new GridViewTableDefinition(); d.Relation = new PropertyRelation("Items"); grid.TableDefinition.ChildTableDefinitions.Add(d); grid.AutoGenerateColumns = false; grid.Columns.Add(new GridViewDataColumn() { DataMemberBinding = new Binding("x") }); } }}private void radGrid_RowLoaded(object sender, RowLoadedEventArgs e){ GridViewRow row = e.Row as GridViewRow; if (row != null) { MyClass _MyClass = row.DataContext as MyClass; if (row != null && _MyClass != null) { row.IsExpandable = _MyClass.Category.Equals(5); } else { row.IsExpandable = false; } if (_MyClass.MediaCategory.Equals(5) && _MyClass.Status.Equals(-1)) { row.Visibility = System.Windows.Visibility.Collapsed; } }}if (!((bool)dlg.ShowDialog()))
{
fileName = dlg.FileName;
}
this.RadChart1.ExportToXps(fileName);