Hello all, I have a hierarchical grid that I have just rewritten to use the infragistics loadondemand technology. Its loads the first level rows fine but the second level is not loaded. During the initialize datasource event on the server I build a relational dataset and set the grids datasource to the dataset. Is this method incorrect? Should I actually be loading the grid one level at a time or can I load all the levels at one time? Any help would be appreciated.
Hi!
I am using Infragistics WebGrid in my application. I want to know how can I show Hierarchical data in the WebGrid. I've a single table in the database which contains 2 fields for parent-child relationship. Now, I want to show the parent-child hierarchy (which may be nested upto n levels) in the WebGrid. Can someone please suggest a way of achieving the desired output?
Thanks in Advance!
Got it. When the control first loads you have to set the datasource of the grid initially to an empty dataset that has a relation on it. I guess this wires everything up on the server so the grid and set itself up on a callback. Sometimes its the simple things that are often over looked =/.
I believe I have found the source of my problem but am unsure of how I can fix it. The built in AJAX of the grid is very narrow in scope as it rightfully should be in order to achieve the best performance. This means that while everything is operating as it should be, I am unable to refresh all of the rows accross all bands. I am still stumped however as to why the grid does not know to give me the option to expand the row in order to retrieve its children. Is there anyway to get child rows of a row that does not alread yhave children?
Ok after looking around a little bit through some of the samples I found the Scroll-On-Demand example that builds the dataset the same way I build by dataset. I am doing a couple of things a little bit differently from that example however and I wanted to ask if there is any way I can get this all to work with my method. Please understand I am not trying to accomplish the scroll on demand behavior. I am merely referencing that example due to the fact that it uses the initialize data source event on the server to build out the entire relational dataset. The differences; however, are as follow:
1. I load the grid by using the invokeXmlHttpRequest method of the grid object on the client. This is accomplished by adding a parameter to the query string of the request that I can then parse during the callback on the server. This querystring parameter's value is a concatinated string of values that I use during the callback to make data calls to refresh the grid. This bahavior can be seen in your AJAX example named "Explorer" listed under that webtree samples in case you need a reference. The request type I use is the eReqType.Page request.
2. Using html, I map the columns of the grid with the "BaseColumnName" attribute so the grid knows where to display the data after the request has been completed.
I have used this method on serveral other controls in my application but have never attempted to do this with multiple bands. In my current control I have defined both bands and the columns and have mapped the grid columns to the source datasets columns using the BaseCoumnName attribute. But once the grid has rendered, I do not get the +/- images to expand or collapse the rows in the grid. I fear that my method only works for flat grids and is not workable for this situation. but to me that answer would symbolize an oversight in the ultrawebgrid control. I would like to refrain from the WARP panels if at all possible as the performance difference is definatly noticeable to the end user compared to the method I have been using.
I am wondering if maybe the bands are not being linked together properly in the html where I define the columns for each band. Is there any way to link these two bands together as parent/child? Again, any help in this matter is greatly appreciated.