treeview选择操作(checkbox)

本文提供了一个使用ASP.NET中TreeView控件的实例,展示了如何通过递归方法加载数据并创建树形结构,包括设置CheckBox和展开状态。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

 

None.gif//--选择操作 最好是用checkbox直观..
None.gif//--treeview绑定例子
None.gifusing System;
None.gifusing System.Data;
None.gifusing System.Configuration;
None.gifusing System.Web;
None.gifusing System.Web.Security;
None.gifusing System.Web.UI;
None.gifusing System.Web.UI.WebControls;
None.gifusing System.Web.UI.WebControls.WebParts;
None.gifusing System.Web.UI.HtmlControls;
None.gifusing System.Data.SqlClient;
None.gif
None.gif
None.gifpublic partial class _Default : System.Web.UI.Page
None.gif{
None.gif    private string connstring = ConfigurationManager.ConnectionStrings["ConnStr"].ToString();
None.gif
None.gif    private bool isHaveCheckBox = false;
None.gif    private bool isExpanded = false;
None.gif    private DataTable dtTree = null;
None.gif    protected void Page_Load(object sender, EventArgs e)
None.gif    {
None.gif        //Response.Write("tttttttttt");
None.gif        if (!IsPostBack)
None.gif        {
None.gif            AreaTree.Nodes.Add(getRootAreaTreeNode(false, false));
None.gif        }       
None.gif
None.gif    }
None.gif
None.gif    /// 
<summary>
None.gif    /// 获取包含全部子节点的根节点数据
None.gif    /// 
</summary>   
None.gif    /// 
<param name="haveCheckBox">节点是否产生CheckBox</param>
None.gif    /// 
<param name="expanded">节点是否展开</param>    
None.gif    /// 
<returns></returns>
None.gif    public TreeNode getRootAreaTreeNode(bool haveCheckBox, bool expanded)
None.gif    {
None.gif        //drPeng.HS.BR.AreaTree brTree = new drPeng.HS.BR.AreaTree();
None.gif
None.gif        string rootID = "0001";//brTree.getRootAreaTreeID();
None.gif        string rootName = "中国";//brTree.getRootAreaTreeName();
None.gif        //ds = brTree.getAllAreaTree();
None.gif
None.gif        isHaveCheckBox = haveCheckBox;
None.gif        isExpanded = expanded;
None.gif
None.gif        #region populate root node
None.gif        TreeNode rootNode = new TreeNode();
None.gif        rootNode.Text = rootName;
None.gif        rootNode.Value = rootID;
None.gif        //rootNode. = rootName;
None.gif        // rootNode.NodeData = "0001";
None.gif        
None.gif        rootNode.Expanded = true;
None.gif        // rootNode.CheckBox = isHaveCheckBox;
None.gif        #endregion
None.gif
None.gif        DataSet dsTree = SqlHelper.ExecuteDataset(connstring, CommandType.Text, "select * from TB_Area");
None.gif        dtTree = dsTree.Tables[0];
None.gif        this.populateAreaTree(rootID, rootNode);
None.gif
None.gif        return rootNode;
None.gif    }
None.gif
None.gif    private void populateAreaTree(string parentID, TreeNode pNode)
None.gif    {        
None.gif
None.gif        DataRow[] dRows = dtTree.Select("ParentAreaCode='" + parentID +"'");
None.gif       
None.gif        if (dRows.Length > 0)
None.gif        {
None.gif            TreeNode Node = null;
None.gif            foreach (DataRow drow in dRows)
None.gif            {
None.gif                Node = new TreeNode();
None.gif                Node.Text = drow["AreaName"].ToString();
None.gif                Node.Value = drow["AreaCode"].ToString();
None.gif                //Node.DataItem = Node.Text + "|" + Node.Value;
None.gif                Node.Expanded = isExpanded;
None.gif                pNode.ChildNodes.Add(Node);
None.gif                populateAreaTree(Node.Value, Node);     //递归 
None.gif            }            
None.gif        }
None.gif    }
None.gif}
None.gif
None.gif

转载于:https://www.cnblogs.com/super-yc/archive/2007/03/12/671835.html

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值