Menu | Control user Custom control code is as follows:
Using System;
Using System.Web.UI;
Using System.Web.UI.WebControls;
Using System.ComponentModel;
Using System.IO;
Namespace Ewfs. Cl
{
public struct Stutreenodes
{
public string strkey;
public string Strdispval;
public string Strparentkey;
public string Strjavascriptcmd;
}
public struct stutreenodesicons
{
public string Strtreecaptionicon;
public string Strtreecontentopenicon;
public string Strtreecontentcloseicon;
}
public struct Stutreepopmenu
{
public string strmenuitemimg;
public string Strmenuitemtext;
public string Strmenuitemcmd;
}
[Defaultproperty ("Text"),
ToolBoxData ("<{0}:treeview runat=server></{0}:treeview>")]
public class TreeView:System.Web.UI.WebControls.WebControl
{
private string m_treecaption; Title
Private stutreenodes[] m_stutreenodes; Node content
Private Stutreenodesicons m_stutreenodesicons; Node icon
private string M_treechangedposturl; Address of the modified tree transfer
private bool M_treeadddir;
private bool M_treerendir;
private bool M_treedeldir;
Private stutreepopmenu[] M_stutreepopmenu;
private string m_gotoid;
private bool M_treerootpopmenu;
Private System.Data.DataSet m_dstreenodes;
protected System.Web.UI.WebControls.Table treetable;
public string treegotoid//Locator ID
{
Get{return m_gotoid;}
Set{m_gotoid=value;}
}
[Bindable (True),
Category ("appearance"),
DefaultValue (True)]
public bool Treerootpopmenu
{
Get{return M_treerootpopmenu;}
Set{m_treerootpopmenu=value;}
}
[Bindable (True),
Category ("appearance"),
DefaultValue ("")]
public bool Treeadddir
{
Get{return M_treeadddir;}
Set{m_treeadddir=value;}
}
public bool Treerendir
{
Get{return M_treerendir;}
Set{m_treerendir=value;}
}
public bool Treedeldir
{
Get{return M_treedeldir;}
Set{m_treedeldir=value;}
}
Public stutreepopmenu[] Stutreepopmenu
{
Get{return M_stutreepopmenu;}
Set{m_stutreepopmenu=value;}
}
public string Treechangedposturl
{
Get{return M_treechangedposturl;}
Set{m_treechangedposturl=value;}
}
Public Stutreenodesicons Stutreenodesicons
{
get {return m_stutreenodesicons;}
set {m_stutreenodesicons = value;}
}
Public stutreenodes[] Stutreenodes
{
Get
{
return m_stutreenodes;
}
Set
{
M_stutreenodes=value;
}
}
public string Treecaption
{
Get
{
return m_treecaption;
}
Set
{
M_treecaption = value;
}
}
<summary>
Get node Contents
</summary>
Public System.Data.DataSet Dstreenodes
{
Get{return This.m_dstreenodes;}
Set
{
This.m_dstreenodes=value;
Settreenodes ();
}
}
private void Settreenodes ()
{
This.m_stutreenodes =new Stutreenodes[m_dstreenodes.tables[0]. Rows.Count];
for (int i=0;i<m_dstreenodes.tables[0]. rows.count;i++)
{
This.m_stutreenodes[i].strkey=m_dstreenodes.tables[0]. Rows[i][0]. ToString ();
This.m_stutreenodes[i].strparentkey=m_dstreenodes.tables[0]. ROWS[I][1]. ToString () = = "0"? "": M_dstreenodes.tables[0]. ROWS[I][1]. ToString ();
This.m_stutreenodes[i].strdispval=m_dstreenodes.tables[0]. ROWS[I][2]. ToString ();
This.m_stutreenodes[i].strjavascriptcmd=m_dstreenodes.tables[0]. ROWS[I][3]. ToString ();
}
}
<summary>
Renders this control to the specified output parameter.
</summary>
<param name= "Output" > HTML writer to write </param>
protected override void CreateChildControls ()
{
System.Web.UI.WebControls.Table otb=new Table ();
System.Web.UI.WebControls.Table otb1=new Table ();
System.Web.UI.WebControls.TableRow otr=new TableRow ();
System.Web.UI.WebControls.TableCell otd=new TableCell ();
System.Web.UI.WebControls.Unit ou=new Unit (&qu