This is a migrated thread and some comments may be shown as answers.

Hide Header of DetailsTable in Hierarchy RadGrid

4 Answers 314 Views
Grid
This is a migrated thread and some comments may be shown as answers.
Surander
Top achievements
Rank 1
Surander asked on 05 Feb 2011, 06:56 AM
Hi All,
  I have Three level Hierarchy RadGrid.
  I have to display the grid  all records(master or details table) expended mode.
  And its working fine by enabling property of master & detailTables HierarchyDefaultExpanded="true"
  But problem is i want to hide the "Header of detailsTables" if there is no child records in any level.

Any Suggestion?

Thanks,
Surander

4 Answers, 1 is accepted

Sort by
0
Princy
Top achievements
Rank 2
answered on 07 Feb 2011, 05:46 AM
Hello Surander,

Try the following code snippet to hide the header when there is no record in detail grid.

C#:
protected void RadGrid1_PreRender(object sender, EventArgs e)
   {
       foreach (GridDataItem item in RadGrid1.Items)
       {
           if (item.Expanded)
           {
               GridTableView tableView = (GridTableView)item.ChildItem.NestedTableViews[0];
               if (tableView.Items.Count == 0)
               {
                   tableView.ShowHeader = false;
               }
               foreach (GridDataItem childitem in tableView.Items)
               {
                   if (childitem.Expanded)
                   {
                       GridTableView childtableView = (GridTableView)childitem.ChildItem.NestedTableViews[0];
                       if (childtableView.Items.Count == 0)
                       {
                           childtableView.ShowHeader = false;
                       }
                   }
               }
           }
       }
     }

Thanks,
Princy.
0
Surander
Top achievements
Rank 1
answered on 07 Feb 2011, 08:16 AM
Hi Princy,
Thanks for you help but its not working for me. I am getting error:

Object reference not set to an instance of an object.


on line
GridTableView tableView = (GridTableView)item.ChildItem.NestedTableViews[0];

And line
GridTableView childtableView = (GridTableView)childitem.ChildItem.NestedTableViews[0];
                       

0
Surander
Top achievements
Rank 1
answered on 07 Feb 2011, 09:41 AM
Hi,
I got it by setting property of DetailTables -> GridTableView ShowHeadersWhenNoRecords="false".

Thanks
Surander
0
Waseem
Top achievements
Rank 1
answered on 26 Aug 2013, 07:56 PM
How to hide header on specific column in Radgrid in javascript?
I don't want to use table.hideColumn(column.get_element().cellIndex);

 function PrintRadGrid() {
                var radGrid = $find('<%= RadGrid1.ClientID %>');
                var table = radGrid.get_masterTableView();
                var column = table.getColumnByUniqueName("CkboxDelKey");
                
                var masterTable = $find("<%=RadGrid1.ClientID%>").get_masterTableView();
                for (var row = 0; row < masterTable.get_dataItems().length; row++) {
                    var str = masterTable.getCellByColumnUniqueName(masterTable.get_dataItems()[row], "CkboxDelKey").innerHTML;
                    if (str.indexOf("<nobr>") != -1) {
                        masterTable.getCellByColumnUniqueName(masterTable.get_dataItems()[row], "CkboxDelKey").style.display = 'none';
                    }
                }

//hide header code
//Code here

}
Tags
Grid
Asked by
Surander
Top achievements
Rank 1
Answers by
Princy
Top achievements
Rank 2
Surander
Top achievements
Rank 1
Waseem
Top achievements
Rank 1
Share this question
or