当前位置: 代码迷 >> J# >> 求C#码: 用SQL Server表table填充treeview1并为各旁支加复选框
  详细解决方案

求C#码: 用SQL Server表table填充treeview1并为各旁支加复选框

热度:5905   发布时间:2013-02-25 00:00:00.0
求C#码: 用SQL Server表table填充treeview1并为各分支加复选框
求C#码: 用SQL Server表table填充treeview1并为各分支加复选框
求C#代码把SQL Server中表table的数据填充到treeview1,先建立一个根名为“全部区本”,第一级分支是a,b,c三个分支,a,b,c分支都有两个子分支即1,2。 同时为两级分支都设有复选框。要求在一个form_load里完成以上所有动作。
已有SQL Server表table数据如下:

id  father  son 
1   a       1 
2   a       2 
3   b       1 
4   b       2 
5   c       1 
6   c       2
------解决方案--------------------------------------------------------
private void Page_Load(object sender, System.EventArgs e)
  {
   InitTreeView(this.TreeView1.Nodes);
   // 在此处放置用户代码以初始化页面
  }
  
  public void InitTreeView(TreeNodeCollection node)
  {
   this.InitTree(node,"0");
  }

  public void InitTree(TreeNodeCollection Nds,string parentId)
  {
   DataSet ds=new DataSet();
   ds=myDt.TreeInfo();
   DataView dv = new DataView();
  
   TreeNode tmpNd;

   string intId;

   dv.Table = ds.Tables[0];

   dv.RowFilter = "PARENTID = " + parentId;

   foreach(DataRowView drv in dv)
   {

    tmpNd = new TreeNode();

    tmpNd.ID = drv["NODEID"].ToString();

    if(drv["linkUrL"].ToString().Trim() != "")
    {
     tmpNd.Text = "<a href ='"+drv["linkUrL"].ToString().Trim() +"'target='mainFrame'>"+drv["NODENAME"].ToString()+"</a>";
    }
    else
    {
     tmpNd.Text = drv["NODENAME"].ToString();
    }

    Nds.Add(tmpNd);

    intId = drv["PARENTID"].ToString();

    InitTree(tmpNd.Nodes,tmpNd.ID);
   }
  }
  #region Web 窗体设计器生成的代码
  override protected void OnInit(EventArgs e)
  {
   //
   // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
   //
   InitializeComponent();
   base.OnInit(e);
  }
  
  /// <summary>
  /// 设计器支持所需的方法 - 不要使用代码编辑器修改
  /// 此方法的内容。
  /// </summary>
  private void InitializeComponent()
  {    
   this.Load += new System.EventHandler(this.Page_Load);

  }
  #endregion
 }
}

------解决方案--------------------------------------------------------
private void FrmTree_Load(object sender, EventArgs e)
{
    FillTreeView();
  相关解决方案