I have created node dynamically
Aspx code:-
<telerik:RadTreeView ID="RadTreeViewCategory" runat="server" OnNodeExpand="RadTreeViewCategory_NodeExpand"
OnNodeDataBound="RadTreeViewCategory_NodeDataBound" AllowNodeEditing="true" OnNodeEdit="RadTreeViewCategory_NodeEdit">
<NodeTemplate>
<div style="float: left; padding-right: 10px;">
<asp:ImageButton ID="lnkEdit" runat="server" OnClientClick='<%# string.Format("return showItemDetail(\"{0}\", \"{1}\", \"{2}\");", Eval("ItemID"), SurvBenchHistID, Eval("IsReportCreated")) %>'
ImageUrl="~/images/EditIcon.gif" ImageAlign="Middle" ToolTip="Edit in New Screen" />
<asp:Label ID="lblname" runat="server" Text='<%# Eval("ReportItemShortText") %>' /></div>
<div style="float: right; padding-left: 40px;">
<asp:Label ID="lblImportance" runat="server" Text='<%# Eval("Importance") %>' Visible="false" />
<asp:Label ID="lblItemID" runat="server" Text='<%# Eval("ItemID") %>' Visible="false" />
<asp:CheckBox ID="chkOptional" runat="server" Visible="false" />
<asp:Label ID="lblReportItemText" runat="server" Text='<%#Eval("ReportItemText") %>'
Visible="false" />
<asp:DropDownList ID="ddlImportance" runat="server" />
</div>
</NodeTemplate>
<DataBindings>
<telerik:RadTreeNodeBinding Expanded="True" />
</DataBindings>
</telerik:RadTreeView>
C#
protected override void OnLoad(EventArgs e)
{
if (!IsPostBack)
{
FillRadTree(dt);
}
}
private void FillRadTree(DataTable dt)
{
RadTreeViewCategory.DataTextField = "ReportItemShortText";
RadTreeViewCategory.DataValueField = "ReportItemText";
RadTreeViewCategory.DataFieldID = "ItemID";
RadTreeViewCategory.DataFieldParentID = "ParentID";
RadTreeViewCategory.DataSource = dt;
RadTreeViewCategory.DataBind();
}
protected void RadTreeViewCategory_NodeEdit(object sender, RadTreeNodeEditEventArgs e)
{
RadTreeNode nodeEdited = e.Node;
string newText = e.Text;
nodeEdited.Text = newText;
}
Aspx code:-
<telerik:RadTreeView ID="RadTreeViewCategory" runat="server" OnNodeExpand="RadTreeViewCategory_NodeExpand"
OnNodeDataBound="RadTreeViewCategory_NodeDataBound" AllowNodeEditing="true" OnNodeEdit="RadTreeViewCategory_NodeEdit">
<NodeTemplate>
<div style="float: left; padding-right: 10px;">
<asp:ImageButton ID="lnkEdit" runat="server" OnClientClick='<%# string.Format("return showItemDetail(\"{0}\", \"{1}\", \"{2}\");", Eval("ItemID"), SurvBenchHistID, Eval("IsReportCreated")) %>'
ImageUrl="~/images/EditIcon.gif" ImageAlign="Middle" ToolTip="Edit in New Screen" />
<asp:Label ID="lblname" runat="server" Text='<%# Eval("ReportItemShortText") %>' /></div>
<div style="float: right; padding-left: 40px;">
<asp:Label ID="lblImportance" runat="server" Text='<%# Eval("Importance") %>' Visible="false" />
<asp:Label ID="lblItemID" runat="server" Text='<%# Eval("ItemID") %>' Visible="false" />
<asp:CheckBox ID="chkOptional" runat="server" Visible="false" />
<asp:Label ID="lblReportItemText" runat="server" Text='<%#Eval("ReportItemText") %>'
Visible="false" />
<asp:DropDownList ID="ddlImportance" runat="server" />
</div>
</NodeTemplate>
<DataBindings>
<telerik:RadTreeNodeBinding Expanded="True" />
</DataBindings>
</telerik:RadTreeView>
C#
protected override void OnLoad(EventArgs e)
{
if (!IsPostBack)
{
FillRadTree(dt);
}
}
private void FillRadTree(DataTable dt)
{
RadTreeViewCategory.DataTextField = "ReportItemShortText";
RadTreeViewCategory.DataValueField = "ReportItemText";
RadTreeViewCategory.DataFieldID = "ItemID";
RadTreeViewCategory.DataFieldParentID = "ParentID";
RadTreeViewCategory.DataSource = dt;
RadTreeViewCategory.DataBind();
}
protected void RadTreeViewCategory_NodeEdit(object sender, RadTreeNodeEditEventArgs e)
{
RadTreeNode nodeEdited = e.Node;
string newText = e.Text;
nodeEdited.Text = newText;
}