I can't find a solution to hierarchical grid, could some please post sample code on how I can make it work.
I have 2 bands in the aspx page, with my colums in the first band. I am binding the grid to a datatable, this works I see the data. But I dont see or know how to show the plus or expand column, which when expanded will show or expand an area where I want to display a FormView.
Thanks
Here's how I populated a four-level hierarchical grid from four SqlDataReaders:
In the designer, I defined all my bands and columns, and turned AutoGenerateColumns off.
In my Page_Load:
Me.TenantListUltraWebGrid.DataSource = GetIpmRehabTenantDataset(Me.ProjectId, Me.IncludeFormerTenants)Me.TenantListUltraWebGrid.DataBind()
Which uses this function:
Dim lResult As New DataSet("TenantDataset")
Dim lTenantFamilyTable As New DataTable("Families") lResult.Tables.Add(lTenantFamilyTable) lResult.Tables("Families").Load(GetIpmRehabFamiliesByPropertyId(ProjectId, vIncludeFormerTenants)) lResult.Relations.Add(lResult.Tables("Units").Columns("UNIT_ID"), _ lResult.Tables("Families").Columns("UNIT_ID"))
Dim lIncomeSourceTable As New DataTable("IncomeSources") lResult.Tables.Add(lIncomeSourceTable) lResult.Tables("IncomeSources").Load(GetIpmRehabIncomeSourcesByPropertyId(ProjectId, vIncludeFormerTenants)) lResult.Relations.Add(lResult.Tables("FamilyMembers").Columns("FAMILY_MEMBER_ID"), _ lResult.Tables("IncomeSources").Columns("FAMILY_MEMBER_ID"))
End Function
The four "GetIpmRehab..." functions each return a SqlDataReader containing all the records related to any of the members of the top-level (lUnitTable) table.
can u please post me the *.aspx also. i want this same functionality and i am having problems with the bands concept.
In looking deeper, this example will not work for my. The data in my child table requires 2 parameters that come from the parent row.
I tried all sorts of trick, but no luck.
I tried binding the child row like so:protected void UltraWebGrid1_InitializeRow(object sender, EventArgs e) { UltraGridBand ugb = new UltraGridBand(); UltraGridColumn ugc = new UltraGridColumn("Child_Id", "", ColumnType.Custom, null); ugc.Width = new Unit("400 px"); ugb.Columns.Add(ugc); UltraWebGrid1.Bands.Add(ugb);
This made it possible for the Expand plus sign to show but the child row disappears after 2 seconds.
I deally I would like to display data in a FormView in the child row rather than in grid format.
Any help will be appreciated.
Thanks for your reply and sample. Is it possible to show a FormView instead of the Grid in the child?