zoukankan      html  css  js  c++  java
  • TreeView的省市选择

    一、父选择窗口

    二、子窗口提供选择FrmSelectAreas

    1、数据准备:

      在数据库中有一张表Areas字段为:AID,AName,APid;

      AID为字段地区编号,AName为地区名称,APid为地区父级AID.

    2、FrmSelectAreas窗体中,递归遍历绑定数据

      

    View Code
     1 void BindParent() //绑定父节点
     2         {
     3             //添加父节点
     4             TreeNode parent = new TreeNode();
     5             parent.Text = "全国";
     6             parent.Tag = 0;
     7             tvAreas.Nodes.Add(parent);
     8             //获取数据集
     9            List<Areas> list = SQLHelper.GetALLAreas();
    10             //子节点绑定
    11            BindChildRen(parent,list);
    12            parent.Expand();//展开父节点
    13         }
    14         //子节点绑定
    15         void BindChildRen(TreeNode parent,List<Areas> list) 
    16         {
    17             //得到父节点的AId
    18             int Aid = Convert.ToInt32(parent.Tag);
    19             //遍历
    20             foreach (Areas item in list)
    21             {
    22                 if (Aid == item.APid)
    23                 {
    24                     TreeNode tn = new TreeNode();
    25                     tn.Text = item.AName;
    26                     tn.Tag = item.AID;
    27                     parent.Nodes.Add(tn);
    28 
    29                     BindChildRen(tn,list);
    30                 }
    31             }
    32         }

     然后,在窗体加载中BindParent();

    2、获取地区全名称:

            void GetAreasText(TreeNode tn) 
            {
                if (tn.Parent != null) 
                {
                    GetAreasText(tn.Parent);
                }
                strSelected += tn.Text + "-";  //strSelected为窗体的public字段,用于传给父窗体数据。
            }
    

     3、单击确认时,传回数据,关闭当前窗体

                GetAreasText(tvAreas.SelectedNode);//获取数据
                strSelected = strSelected.TrimEnd('-');
                if (!string.IsNullOrEmpty(strSelected))
                {
                    this.DialogResult = DialogResult.OK;
                }
    
  • 相关阅读:
    Servlet生命周期
    DAO 开发模式的几个类
    Iterator用法
    mysql相似于oracle的to_char() to_date()方法
    Java Web页面跳转
    JSP 连接MySQL 5.1
    采用DOM进行表格的修改操作
    使用css让XML文件按照HTML的风格显示出来
    正则表达式Regular Expression
    什么是“堆”,"栈","堆栈","队列",它们的区别
  • 原文地址:https://www.cnblogs.com/dedeyi/p/2617566.html
Copyright © 2011-2022 走看看