I have the grid set up for Automatic Load on Deman and Paging. When I try to click the arrow to expand the parent row I get the following error message:
Runtime Exception: No child grid script descriptors are available!
I found a different post where it said to set the InitialDataBindDepth to -1 to load all the data, if I try this I am able to expand the parent row but when I try to page through the grid I get the following error:
Deserialization Failure: Invalid Response.
Any ideas on how I can get the grid to expand the parent row and also enable paging?
Thanks!
Hi wins903,
It has been some time since your post, however in case you still need assistance I would be glad to help.
In this case I am obviously unaware of the precise configuration you are using in your grid, however I can suggest that you ensure that the DataMembers and DataKeyFields are setup for all of your bands. It may be worth testing whether load on demand functions with paging turned off as a start.
Please let me know if you have any questions.
Hello,
I am having exactly the same issue. I am using WebHierarchicalDataGrid v11.2 and VS 2008. I have just 2 bands in my grid. But when I try to expand the row of parent band, I am getting an error "Runtime Exception: No child grid script descriptors are available! "
I have also assigned DataKeyFields and DataMember to the bands. My code is as follows -
Dim parentBand As New Band() parentBand.AutoGenerateColumns = False parentBand.DataMember = "Parent" parentBand.DataKeyFields = "ID" grdGrid.Bands.Add(parentBand) Dim childBand As New Band() childBand.AutoGenerateColumns = False childBand.DataMember = "Child" childBand.DataKeyFields = "GRPID" grdGrid.Bands.Add(childBand) arrKey(0) = ds.Tables(0).Columns("ID") ds.Tables(0).PrimaryKey = arrKey dtRl = New DataRelation("Relation", ds.Tables(0).Columns("ID"), ds.Tables(1).Columns("GRPID")) ds.Relations.Add(dtRl) grdGrid.DataSource = ds grdGrid.DataBind()
What exactly is missing here?Also in the aspx I have set AutoGenerateBands=false and AutoGenerateColumns=false.
Please help me with this.
Thanks
Amruta D
Hi Amruta,
You need to add your child band in the band collection of your parent band (otherwise multiple bands are added at the root level). Also you may add the bands through your grid's GridView. For instance:
grdGrid.GridView.Bands[0].Bands.Add(childBand)
Please feel free to contact me if you have any questions.
Hello Petar,
I tried adding child band in the bands collection, but even that does not seem to be working. Also I have another query. In my grid's child band, I have around 100 columns to display. So is it like I have to define Key and DataKeyField for each and every column? And the number of columns change dynamically as per user input.
I am not getting like exactly what all should be set to show the grid with bands.
Hi Petar,
Thanks for the immediate update. The solution you provided worked perfectly for me.
Also in addition I tried doing it parentBand.Bands.Add(childBand) this way and that too worked for my code.
Thanks a lot..!!
Apologies for the misconception as my previous post was not entirely correct.
The hierarchical grid's root band is present by default and can be accessed using:
Whdg.GridView.Band
Respectively the child band can be added programmatically using:
Whdg.GridView.Band.Bands.Add(childBand)
You can find more useful information on that topic at:
http://forums.infragistics.com/forums/p/63804/325675.aspx#
As for your other query - a unique key is required for all WebDataGrid/WebHierarchicalDataGrid columns. Additionally the DataKeyField property has to be set for all BoundDataFields.