HI 
I m new to Telerik WPF, i m having a problem with child binding, can u plz help me out.
code:
 
 
 
 
 
 
 
 
note:
Is there any folder structure options available there in wpf,
screenshot attached is the mockup for Folder Structure.

Thanks
Zeno J S
                                I m new to Telerik WPF, i m having a problem with child binding, can u plz help me out.
code:
<telerik:RadGridView x:Name="AnalysisListGridView" Grid.Column="3" Grid.Row="2"  Width="665" Height="405" RowLoaded="RadGridView1_RowLoaded"                                 AutoGenerateColumns="False" IsReadOnly="True" VerticalAlignment="Center" HorizontalContentAlignment="Left"                                 MinColumnWidth="20" GridLinesVisibility="Horizontal" RowHeight="33" CanUserSortColumns="True" CanUserResizeColumns="False"                                 CanUserReorderColumns="False" CanUserFreezeColumns="False" FontSize="12" ScrollViewer.CanContentScroll="true"                                 FontFamily="Arial" Padding="0,0,0,0" BorderBrush="#FFCBD7E3" Foreground="#FF707070" Background="#FFFFFFFF"                                 HorizontalGridLinesBrush="#FFEEEEEE" SelectionUnit="FullRow" SelectionMode="Single" ShowGroupPanel="False"                                 RowIndicatorVisibility="Collapsed" GroupPanelForeground="Black" AlternateRowBackground="#FFF4F4F4" telerik:Theming.Theme="Windows7"                                 telerik:StyleManager.Theme="Windows7" BorderThickness="1" Cursor="Hand" LoadingRowDetails="AnalysisListGridView_LoadingRowDetails">                <telerik:RadGridView.HeaderRowStyle>                    <Style TargetType="telerik:GridViewHeaderRow">                        <Setter Property="Background">                            <Setter.Value>                                <LinearGradientBrush EndPoint="0.5,0" StartPoint="0.5,1">                                    <GradientStop Color="#FFcfd7db"/>                                    <GradientStop Color="#FFFFFFFF" Offset="1"/>                                </LinearGradientBrush>                            </Setter.Value>                        </Setter>                    </Style>                </telerik:RadGridView.HeaderRowStyle>                <telerik:RadGridView.ChildTableDefinitions>                    <telerik:GridViewTableDefinition/>                </telerik:RadGridView.ChildTableDefinitions>            </telerik:RadGridView>private void GetHistoryInfo(){    this.AnalysisListGridView.ItemsSource = null;    this.AnalysisListGridView.ItemsSource = ROISync.GetOfflineAnalysisHistory(App.LoggedInUser).ListROIAnalysis.OrderByDescending(an => an.AnalysisLastUpdatedDateTime);}void RadGridView1_RowLoaded(object sender, RowLoadedEventArgs e){    GridViewTableDefinition definition = new GridViewTableDefinition();    GridViewRow row = e.Row as GridViewRow;    ROIAnalysisDataModel analysis = e.DataElement as ROIAnalysisDataModel;    if (row != null && analysis != null)    {        row.IsExpandable = this.HasSubordinates(analysis);    }}private bool HasSubordinates(ROIAnalysisDataModel analysis){    IEnumerable<ROIAnalysisDataModel> childDataSource = ROISync.GetOfflineAnalysisHistory(App.LoggedInUser).ListROIAnalysis.Where(a => a.ParentID != 0).OrderByDescending(an => an.AnalysisLastUpdatedDateTime);    return (from Anlys in childDataSource where Anlys.ParentID == analysis.AnalysisID select Anlys).Any();}void AnalysisListGridView_LoadingRowDetails(object sender, GridViewRowDetailsEventArgs e){    GridViewTableDefinition definition = new GridViewTableDefinition();    GridViewDataControl dataControl = (GridViewDataControl)sender;    if (dataControl.ParentRow != null && dataControl.ChildTableDefinitions.Count == 0)    {        int ParentID = Convert.ToInt32(((ROIDataModels.ROIAnalysisDataModel)(((Telerik.Windows.Controls.RadRowItem)(dataControl.ParentRow)).Item)).AnalysisID);        foreach (ROIDataModels.ROIAnalysisDataModel folder in ROISync.GetOfflineAnalysisHistory(App.LoggedInUser).ListROIAnalysis)        {            if (folder.FileType.ToLower() == "folder" || folder.ParentID == ParentID)            {                definition.DataSource = null;                definition.DataSource = ROISync.GetOfflineAnalysisHistory(App.LoggedInUser).ListROIAnalysis.Where(a => a.ParentID == folder.ParentID).OrderByDescending(an => an.AnalysisLastUpdatedDateTime);                dataControl.ChildTableDefinitions.Add(definition);            }        }    }}private void AnalysisListGridView_DataLoading(object sender, Telerik.Windows.Controls.GridView.GridViewDataLoadingEventArgs e){    GridViewDataControl dataControl = (GridViewDataControl)sender;    if (dataControl.ParentRow != null)    {        dataControl.ShowGroupPanel = false;        dataControl.AutoGenerateColumns = false;        dataControl.CanUserFreezeColumns = false;        dataControl.IsReadOnly = true;        dataControl.SelectionMode = System.Windows.Controls.SelectionMode.Extended;        dataControl.IsFilteringAllowed = false;        dataControl.ShowInsertRow = false;        dataControl.RowIndicatorVisibility = Visibility.Collapsed;        dataControl.ChildTableDefinitions.Clear();        dataControl.Margin = new Thickness(0, 0, 0, 0);        dataControl.EnableRowVirtualization = true;        dataControl.MaxHeight = 100;        ScrollViewer.SetVerticalScrollBarVisibility(dataControl, ScrollBarVisibility.Auto);        int ParentID = Convert.ToInt32(((ROIDataModels.ROIAnalysisDataModel)(((Telerik.Windows.Controls.RadRowItem)(dataControl.ParentRow)).Item)).AnalysisID);        GridViewTableDefinition definition = new GridViewTableDefinition();        definition.DataSource = null;        definition.DataSource = ROISync.GetOfflineAnalysisHistory(App.LoggedInUser).ListROIAnalysis.Where(a => a.ParentID == ParentID).OrderByDescending(an => an.AnalysisLastUpdatedDateTime);        //dataControl.ChildTableDefinitions.Clear();        dataControl.ChildTableDefinitions.Add(definition);    }}note:
Is there any folder structure options available there in wpf,
screenshot attached is the mockup for Folder Structure.
Thanks
Zeno J S
