web应用程序中的treeview构成问题,请大家指点
下边代码是我自己写的一个增加树节点的测试:
有这样一些问题:
1.为什么我只能用Microsoft.Web.UI.WebControls.TreeNode[] tn=new Microsoft.Web.UI.WebControls.TreeNode[j];这样完整的指示去实例化TreeNode,而不能简单的写成:tn=new TreeNode();
2.无论我选定的是根节点,还是我新增的节点,点击Button1<即Text为:增加...>后,都只能在根节点下边增加节点,而不能在通过增加按钮产生的子节点上边再增加下一级节点??
public class WebForm3 : System.Web.UI.Page
{
protected System.Web.UI.WebControls.Button Button1;
protected Microsoft.Web.UI.WebControls.TreeNode tn1;
protected Microsoft.Web.UI.WebControls.TreeNode root;
protected System.Web.UI.WebControls.Label Label1;
protected System.Web.UI.WebControls.CheckBox ml;
protected Microsoft.Web.UI.WebControls.TreeView TreeView1;
protected System.Web.UI.WebControls.CheckBox mx;
//protected Microsoft.Web.UI.WebControls.TreeView TreeView1;
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
TreeView1=new Microsoft.Web.UI.WebControls.TreeView();
root=new Microsoft.Web.UI.WebControls.TreeNode();
TreeView1.Nodes.Add(root);
TreeView1.Visible=true;
root.Text="目录";
this.Controls.Add(TreeView1);
if(TreeView1.Nodes[0].Text=="目录")
{
Button1.Text="添加...";
}
for(int i=0;i<TreeView1.Nodes.Count;i++)
{
i.ToString();
if(TreeView1.SelectedNodeIndex.Equals(i.ToString())==true)
{
Label1.Text=TreeView1.Nodes[i].Text.ToString();
}break;
}
}
#region Web Form Designer generated code
override protected void OnInit(EventArgs e)
{
//
// CODEGEN:该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.Button1.Click += new System.EventHandler(this.Button1_Click);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void Button1_Click(object sender, System.EventArgs e)
{
if(Button1.Text=="添加..."&&ml.Checked==true)
{
for(int i=0;i<TreeView1.Nodes.Count;i++)
{
i.ToString();
//if(TreeView1.SelectedNodeIndex.Equals(i.ToString())==true)
{
int j=i+1;
Microsoft.Web.UI.WebControls.TreeNode[] tn=new Microsoft.Web.UI.WebControls.TreeNode[j];
TreeView1.Nodes[i].Nodes.Add(tn[i] =new Microsoft.Web.UI.WebControls.TreeNode());
tn[i].Text="新增目录";
}//break;
}
}
}
}