c#窗口编程入门[001]--TreeView控件

我也是一个初学者,下面是我的TreeView控件的学习经验! 

        TreeView有一个Tag属性,可以包含一个object对象,我估计他的作用就是Delphi中TreeView控件下的Data属性!但是我觉得用起来更加的方便!

cNode.Tag = "我可以是任何的对象";


        TreeView控件添加TreeNode就有一些不同了,他的代码是:

pNode = tv.Nodes.Add("我是tv的首结点");
cNode = pNode.Nodes.Add("我是pNode的子结点");

        下面是TreeView的常用代码:

    {1} : 根据数据库中的结构生成树
-------------------------------------------------------------------------------------
  public int GetDataToTree(ref TreeView tv,string CompanyID)
  {
   SqlConnection conn = new SqlConnection(SQLHelper.Conn_1);

   DataSet ds = SQLHelper.ExecustSQL_DataSet(conn,"select CmpNum,CmpName,Left(CmpNum,Len(CmpNum)-2) as PrtID from Company where CmpNum like '"+CompanyID+"%' order by CmpNum");
   dt = ds.Tables["table"];
   dv = dt.DefaultView ;
   dv.Sort = "PrtID";
   DataRowView[] arrDRV = dv.FindRows("00");
   if (arrDRV.Length==0) return 0;

   TreeNode pNode = null;
   foreach(DataRowView drv in arrDRV)
   {
    pNode = tv.Nodes.Add(drv.Row["CmpNum"].ToString()+"/"+drv.Row["CmpName"].ToString());
    pNode.Tag = drv.Row["CmpNum"].ToString();
    CreateTreeNode(ref pNode);
   }
   return 1;
  }

  private void CreateTreeNode(ref TreeNode pNode)
  {
   DataRowView[] arrDRV = dv.FindRows(pNode.Tag);
   if (arrDRV.Length ==0) return;

   TreeNode cNode = null;
   foreach(DataRowView drv in arrDRV)
   {
    cNode = pNode.Nodes.Add(drv.Row["CmpNum"].ToString()+"/"+drv.Row["CmpName"].ToString());
    cNode.Tag = drv.Row["CmpNum"].ToString();
    CreateTreeNode(ref cNode);
   }
  }

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 1
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值