private void LoadInfo(bool forceBind = true){ radJobPostings.DataSource = JobPosting.LoadVAllJobPostings(user_id, _defaultFromDate); //_defaultFromDate = Today - 3 years if (forceBind) { radJobPostings.MasterTableView.GetColumn("PostedDate").CurrentFilterValue = DateTime.Today.AddDays(-180).ToShortDateString(); radJobPostings.DataBind(); }}
<telerik:RadGrid ID="grdNotes" runat="server" OnColumnCreated="grdNotes_ColumnCreated" OnItemCreated="grdNotes_ItemCreated" OnItemDataBound="grdNotes_ItemDataBound" OnNeedDataSource="grdNotes_NeedDataSource" OnPreRender="grdNotes_PreRender" AutoGenerateColumns="False" SkinID="HierarchicalGrid" GridLines="None" AllowCustomPaging="True" ShowStatusBar="True" PageSize="20" EnableLinqExpressions="False" Width="99%" CellSpacing="0"> <MasterTableView HierarchyDefaultExpanded="true" HierarchyLoadMode="Client" AllowSorting="true" DataKeyNames="Id,ParentId,Token,IsRoot,Replies,NoteCreator" ClientDataKeyNames="Id,ParentId,Token,IsRoot,Replies,NoteCreator" NoDetailRecordsText="" EnableNoRecordsTemplate="False" TableLayout="Auto" Width="100%" HorizontalAlign="Right" EnableHeaderContextMenu="True"> <SelfHierarchySettings ParentKeyName="ParentId" KeyName="Id" MaximumDepth="20" /> <RowIndicatorColumn Visible="False" FilterControlAltText="Filter RowIndicator column"></RowIndicatorColumn> <ExpandCollapseColumn Visible="True" FilterControlAltText="Filter ExpandColumn column"></ExpandCollapseColumn> <Columns> <telerik:GridClientSelectColumn DataTextField="Id" HeaderAbbr="Select" HeaderButtonType="TextButton" HeaderText="Select" HeaderTooltip="Select/Deselect" Text="Select" Visible="false" UniqueName="asgSelect"> </telerik:GridClientSelectColumn> <telerik:GridBoundColumn DataField="Id" SortExpression="Id" UniqueName="Id"> <HeaderStyle Width="50px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Title" SortExpression="Title" UniqueName="Title" HtmlEncode="true"> <HeaderStyle Width="150px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="Body" SortExpression="Body" UniqueName="Body" HtmlEncode="False"> <HeaderStyle Width="350px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="CreatedBy" SortExpression="CreatedBy" UniqueName="CreatedBy"> <HeaderStyle Width="150px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="CreatedDate" SortExpression="CreatedDate" UniqueName="CreatedOn"> <HeaderStyle Width="150px" /> </telerik:GridBoundColumn> <telerik:GridBoundColumn DataField="ParentId" HeaderText="Parent Id" SortExpression="ParentId" UniqueName="ParentId" Visible="false" /> <telerik:GridBoundColumn DataField="Token" HeaderText="Token" SortExpression="Token" UniqueName="Token" Visible="false" /> <telerik:GridBoundColumn DataField="IsRoot" HeaderText="Is Root" SortExpression="IsRoot" UniqueName="IsRoot" Visible="false" /> <telerik:GridBoundColumn DataField="Replies" HeaderText="Replies" SortExpression="Replies" UniqueName="Replies" Visible="false" /> <telerik:GridBoundColumn DataField="NoteCreator" HeaderText="NoteCreator" SortExpression="NoteCreator" UniqueName="NoteCreator" Visible="false" /> <telerik:GridTemplateColumn UniqueName="Actions" Visible="false"> <ItemTemplate> <telerik:RadToolBar ID="rtbNoteActions" runat="server" SkinID="ActionToolbar" OnButtonClick="NotesGridToolbarButtonClicked" OnClientButtonClicking="NoteActionToolbarClicking"> <Items> <telerik:RadToolBarButton Text="Properties" CommandName="Properties" ImageUrl="~/Images/page_view.gif" /> <telerik:RadToolBarButton Text="Reply" CommandName="Reply" ImageUrl="~/Images/page_edit.gif" /> <telerik:RadToolBarButton Text="Security" CommandName="Security" ImageUrl="~/Images/shield16.gif" /> <telerik:RadToolBarButton Text="Delete" CommandName="Delete" ImageUrl="~/Images/delete16.gif" /> </Items> </telerik:RadToolBar> </ItemTemplate> <HeaderStyle Width="15%"></HeaderStyle> </telerik:GridTemplateColumn> </Columns> <EditFormSettings> <EditColumn FilterControlAltText="Filter EditCommandColumn column"></EditColumn> </EditFormSettings> <PagerStyle AlwaysVisible="True"></PagerStyle> </MasterTableView> <HeaderContextMenu EnableTheming="True"> <CollapseAnimation Type="OutQuint" Duration="200"></CollapseAnimation> </HeaderContextMenu> <ExportSettings ExportOnlyData="True" IgnorePaging="True"> </ExportSettings> <ClientSettings Selecting-AllowRowSelect="true" Resizing-AllowColumnResize="true" AllowColumnsReorder="true"> <Selecting AllowRowSelect="True"></Selecting> <ClientEvents OnRowSelected="NoteRowSelected" OnRowContextMenu="NoteContextMenu" OnRowDblClick="grdNotes_OnRowDblClick" OnGridCreated="NotePageLoad" OnTableCreated="ResizeAllNoteColumns" OnColumnResized="ResizeAllNoteColumns" OnColumnHiding="HideDetailColumn" OnColumnShowing="ShowDetailColumn" /> </ClientSettings> <PagerStyle Position="Bottom" AlwaysVisible="True" Mode="NextPrevAndNumeric" Wrap="False" BackColor="White" Font-Size="Large" /></telerik:RadGrid>Col A | Col B | Col CParent A Val | Parent B Val | Parent C ValChild A Val | Child B Val | Child C ValChild A Val | Child B Val | Child C ValParent A Val | Parent B Val | Parent C ValCol B | Col A | Col CParent B Val | Parent A Val | Parent C ValChild A Val | Child B Val | Child C ValChild A Val | Child B Val | Child C ValParent B Val | Parent A Val | Parent C Val
Followup: Found this:
http://www.telerik.com/help/aspnet-ajax/treeview-data-binding-hierarchical.html
which answered my question, and was able to resolve my issue.
Sometimes, admittedly, I am not the brightest bulb on the planet, but for the life of me I just can't seem to get what I think is a rather simple TreeView to work.
I have data from an SQL data source which is broken down into categories, i.e.
ID Text ParentId-----------------------------------------------------------Header HeaderPreamble PreambleClauses Clauses Administrative Fees Clauses Prompt Delivery ClausesSignature Block Signature BlockAppendix AppendixExhibit Exhibit<telerik:RadTreeView runat="server" ID="RadTreeView1" DataSourceID="SqlDataSource1"DataFieldID="id" DataFieldParentID="parentID" Skin="Vista" CheckBoxes="true"> <DataBindings> <telerik:RadTreeNodeBinding TextField="Text" /> <telerik:RadTreeNodeBinding Depth="0" Checkable="false" TextField="Text" Expanded="true" CssClass="rootNode" /> </DataBindings></telerik:RadTreeView><CommandItemTemplate> <asp:Button ID="btnExport" runat="server" CommandName="ExportToExcel" Text="Export Excel" /></CommandItemTemplate> Protected Sub myRadGrid_ItemCommand(sender As Object, e As GridCommandEventArgs) Handles myRadGrid.ItemCommand If e.CommandName = "ExportToExcel" Then For Each item As GridItem In myRadGrid.MasterTableView.Items item.Expanded = True Next isExport = True End If End Sub Protected Sub myRadGrid_ItemCreated(sender As Object, e As GridItemEventArgs) Handles myRadGrid.ItemCreated If Not isExport Then If TypeOf e.Item Is GridCommandItem Then ScriptManager.GetCurrent(Page).RegisterPostBackControl(e.Item.FindControl("btnExport")) End If End If End Sub

protected
void Page_Init(object sender, EventArgs e)
{
RadDockLayout1.LoadDockLayout+=
new DockLayoutEventHandler(RadDockLayout1_LoadDockLayout);
AddDocksByPosition(0);
{
/*** Get list of docks from DB and load it to the Docklayout****/
{
System.Web.Script.Serialization.
JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
string serializedList = DockPostionstr;
if (!string.IsNullOrEmpty(serializedList))
{
string[] states = serializedList.Split('|');
foreach (string stringState in states)
{
if (stringState != string.Empty)
{
DockState state = serializer.Deserialize<DockState>(stringState);
e.Positions[state.UniqueName] = state.DockZoneID;
e.Indices[state.UniqueName] = state.Index;
}
}
}
}
protected void SaveDockLayout1_LoadDockLayout(object sender, DockLayoutEventArgs e)
{
string dockState;
System.Web.Script.Serialization.
JavaScriptSerializer serializer = new System.Web.Script.Serialization.JavaScriptSerializer();
List<DockState> stateList = RadDockLayout1.GetRegisteredDocksState();
StringBuilder serializedList = new StringBuilder();
int i = 0;
while (i < stateList.Count)
{
serializedList.Append(serializer.Serialize(stateList[i]));
serializedList.Append(
"|");
i++;
}
dockState = serializedList.ToString();
/***** DB call to save Dashboard state per Tab******/
}