Hi,
Is it possible to show a hierarchical data(another grid) on clicking of a row in a igDP:XamDataGrid?
regards
Vivek
Hello Vivek,
Thank you for your post. I have been looking through it and I attached a sample project containing a xamDataGrid with hierarchical data. By selecting a row, the child elements are expanded. Please let me know if this covers your expectations.
I am looking forward to see hearing from you.
Hi Stefan Stoyanov
Great example. That was really helpful to me!
I do have one question though. Is it possible to remove the headers from the "book-items". I have some "recursive" data that I want to display with the same headers for all rows.
Is this possible and if so, how?
Hello CTCWESTSOFT,
I am glad I helped you. I attached a new sample project, which is similar to my previous one, but this time the headers of the child FieldLayout are hidden, which is what I suppose you wanted. Please let me know if this is what you are trying to achieve or I have misunderstood you.
Looking forward for your reply.
Thanks for the quick response. Unfortunately it didn't help...
As mentioned ealier I'm trying to display some "recursive" data in the grid. I have included my XAML and a screenshot
<igDP:XamDataGrid x:Name="MyGrid" DataSource="{Binding Calculations}"> <igDP:XamDataGrid.FieldSettings> <igDP:FieldSettings CellClickAction="SelectRecord" AllowEdit="True" /> </igDP:XamDataGrid.FieldSettings> <igDP:XamDataGrid.FieldLayouts> <igDP:FieldLayout> <igDP:Field Name="ShortName"></igDP:Field> <igDP:Field Name="Name"></igDP:Field> <igDP:Field Name="Min"></igDP:Field> <igDP:Field Name="Prob"></igDP:Field> <igDP:Field Name="Mean"></igDP:Field> </igDP:FieldLayout> <igDP:FieldLayout> <igDP:Field Name="ShortName"> <igDP:Field.Settings> <igDP:FieldSettings LabelPresenterStyle="{StaticResource MyStyle}"></igDP:FieldSettings> </igDP:Field.Settings> </igDP:Field> <igDP:Field Name="Name"> <igDP:Field.Settings> <igDP:FieldSettings LabelPresenterStyle="{StaticResource MyStyle}"></igDP:FieldSettings> </igDP:Field.Settings> </igDP:Field> <igDP:Field Name="Min"> <igDP:Field.Settings> <igDP:FieldSettings LabelPresenterStyle="{StaticResource MyStyle}"></igDP:FieldSettings> </igDP:Field.Settings> </igDP:Field> <igDP:Field Name="Prob"> <igDP:Field.Settings> <igDP:FieldSettings LabelPresenterStyle="{StaticResource MyStyle}"></igDP:FieldSettings> </igDP:Field.Settings> </igDP:Field> <igDP:Field Name="Max"> <igDP:Field.Settings> <igDP:FieldSettings LabelPresenterStyle="{StaticResource MyStyle}"></igDP:FieldSettings> </igDP:Field.Settings> </igDP:Field> <igDP:Field Name="Mean"> <igDP:Field.Settings> <igDP:FieldSettings LabelPresenterStyle="{StaticResource MyStyle}"></igDP:FieldSettings> </igDP:Field.Settings> </igDP:Field> </igDP:FieldLayout> </igDP:XamDataGrid.FieldLayouts> </igDP:XamDataGrid>
Hello George,
The approach I suggested you works if there are different FieldLayouts for the parent and child records, so I created a sample project for you, which works with self-reference data.
Hope this helps you.
Hi Stefan,
are you sure, this style applies always to the first level? In my case I have only one FieldLayout and it IsDefault.
So by me it applies to all the levels.
Is there any other Property, that one could use for triggering?
Greets,
George
I can suggest you use the following Styles for the LabelPresenter and DataRecordPresenter:
<Style TargetType="{x:Type igDP:LabelPresenter}"> <Style.Triggers> <DataTrigger Binding="{Binding RelativeSource={RelativeSource Self},Path=Field.Owner.IsDefault}" Value="False"> <!--Add the Setters for the LabelPresenter--> </DataTrigger> </Style.Triggers> </Style> <Style TargetType="{x:Type igDP:DataRecordPresenter}"> <Style.Triggers> <DataTrigger Binding="{Binding RelativeSource={RelativeSource Self},Path=FieldLayout.IsDefault}" Value="False"> <!--Add the Setters for the DataRecordPresenter--> </DataTrigger> </Style.Triggers> </Style>
Which has Triggers in order to determine if the Labels and Records are from the first level or not.
I saw your sample - this is the functionality I need also.
In my case i have generic data and I use AutoGenerateFields = True; What could I do in this case? How to override the LabelPresenter and DataRecordPresenter styles only for the ChildRecords?
Looking forward to your suggestion,
Hello again,
When you buy a license you get both the WPF3 and WPF4 assemblies, so I assume you are looking for ver.4 in C:\Windows\assembly, where is the GAC for CLR 1, 2 and 3 and the GAC for CLR 4 is here C:\Windows\Microsoft.NET\assembly\GAC_MSIL. Please let me know if this helps you or you need further clarifications on this matter.