Tree control with right-click menu (1)

xiaoxiao2021-03-06  71

User-defined control code is as follows: use system; use system.web.ui; use system.web.ui.webcontrols; using system.ComponentModel; use system.io;

Namespace ewfs.cl {public struct stutreenodes {public string strkey; public string strparentkey; public string strjavascriptcmd;

Public struct stutreenodesicons {public string strtreecaptionicon; public string strtreecontentcloseicon;}

Public struct stutreepopmenu {public string strmenuitemimg; public string strmenuitemcmd;}

[DefaultProperty ( "Text"), ToolboxData ( "<{0}: TreeView runat = server> ")] public class TreeView: System.Web.UI.WebControls.WebControl {private string m_TreeCaption; // caption private stuTreeNodes [] m_stuTreeNodes; // node content private stuTreeNodesIcons m_stuTreeNodesIcons; // node icon private string m_TreeChangedPostURL; private bool m_TreeAddDir tree address delivered after // modified; 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 // positioning 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_treeaddddir = 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;}} ///

/// Get Node content /// public system.data.dataset dstreenodes {get {returnides} 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 /// The control is presented to the specified output parameter.

/// /// To write HTML writer 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 tableerow (); system.Web.ui.WebControls.tablecell odd = new TableCell () System.Web.ui.WebControls.Unit ou = new unit ("98%"); System.Web.ui.ControlColLlection OCC = NULL; System.Web.ui.Control OC1 = NULL; INT i; // Output JS File String Scr = ""; //