Here I have created sample that full-fill your requirement.
HTML
<div>
<cc1:ToolkitScriptManager ID="ToolkitScriptManager1" runat="server">
</cc1:ToolkitScriptManager>
<asp:TreeView ID="TreeView1" runat="server" ImageSet="XPFileExplorer">
<HoverNodeStyle Font-Underline="True" ForeColor="#6666AA" />
<NodeStyle Font-Names="Tahoma" Font-Size="8pt" ForeColor="Black" HorizontalPadding="2px"
NodeSpacing="0px" VerticalPadding="2px"></NodeStyle>
<ParentNodeStyle Font-Bold="False" />
<SelectedNodeStyle BackColor="#B5B5B5" Font-Underline="False" HorizontalPadding="0px"
VerticalPadding="0px" />
</asp:TreeView>
<br />
<br />
<cc1:ModalPopupExtender ID="ModalPopupExtender1" BehaviorID="mpe" runat="server"
PopupControlID="pnlPopup" TargetControlID="btnAddDir" BackgroundCssClass="modalBackground"
CancelControlID="btnCancel">
</cc1:ModalPopupExtender>
<asp:Button ID="btnAddDir" Text="Add Directory" runat="server" />
<asp:Panel ID="pnlPopup" runat="server" CssClass="modalPopup" Style="display: none;
width: 30%">
<div class="header">
Add Directories
</div>
<div class="body">
<br />
<asp:TextBox ID="txtDirName" runat="server" />
<br />
<br />
<asp:Button ID="btnAdd" runat="server" Text="Add" OnClick="AddDirectory" />
<asp:Button ID="btnCancel" runat="server" Text="Cancel" />
</div>
</asp:Panel>
</div>
Code
protected void Page_Load(object sender, EventArgs e)
{
if (!this.IsPostBack)
{
TreeView1.Nodes.Add(new TreeNode("C:", "C:"));
TreeView1.Nodes[0].ChildNodes.Add(new TreeNode("Desktop", "Desktop"));
TreeView1.Nodes[0].ChildNodes.Add(new TreeNode("Movies", "Movies"));
TreeView1.Nodes[0].ChildNodes.Add(new TreeNode("Songs", "Songs"));
TreeView1.Nodes[0].ChildNodes.Add(new TreeNode("Imp", "Imp"));
TreeView1.Nodes.Add(new TreeNode("D:", "D:"));
TreeView1.Nodes[1].ChildNodes.Add(new TreeNode("Softwares", "Softwares"));
TreeView1.Nodes[1].ChildNodes.Add(new TreeNode("Images", "Images"));
TreeView1.Nodes[1].ChildNodes.Add(new TreeNode("Photos", "Photos"));
TreeView1.Nodes[1].ChildNodes.Add(new TreeNode("Anrtivirus", "Anrtivirus"));
}
}
protected void AddDirectory(object sender, EventArgs e)
{
if (TreeView1.SelectedNode != null)
{
if (!string.IsNullOrEmpty(this.txtDirName.Text))
{
TreeView1.SelectedNode.ChildNodes.Add(new TreeNode(this.txtDirName.Text.Trim(), this.txtDirName.Text.Trim()));
}
}
else
{
this.ClientScript.RegisterStartupScript(typeof(Page), "select", "alert('Please select at least one parent directory')", true);
}
}
Screenshot
