首页 > 代码库 > cs-SelectTree-DropTreeNode, SelectTreeList
cs-SelectTree-DropTreeNode, SelectTreeList
ylbtech-Unitity: cs-SelectTree-DropTreeNode, SelectTreeList |
DropTreeNode.cs SelectTreeList.cs
1.A,效果图返回顶部 |
1.B,源代码返回顶部 |
1.B.1,DropTreeNode.csView CodeView Code
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace Healthcare.Framework.Web.Mvc{ public class DropTreeNode { public string RootValue { get; set; } public string TreeNodeID { get; set; } public string Text { get; set; } public string Value { get; set; } public string ParentTreeNodeID { get; set; } public string Css { get; set; } }}
1.B.2,SelectTreeList.cs
using System;using System.Collections;using System.Collections.Generic;using System.Linq;using System.Reflection;using System.Text;using System.Threading.Tasks;namespace Healthcare.Framework.Web.Mvc{ /// <summary> /// 树形下拉框 /// </summary> public class SelectTreeList { #region 字段 List<DropTreeNode> treeNodes = new List<DropTreeNode>(); string rootValue = http://www.mamicode.com/null; string valueField = null; string textField = null; string nodeField = null; string parentField = null; string css = null; string selectValue = http://www.mamicode.com/""; bool isFinalLevel = false; public bool IsFinalLevel { get { return isFinalLevel; } set { isFinalLevel = value; } } public string SelectValue { get { return selectValue; } set { selectValue =http://www.mamicode.com/ value; } } #endregion #region 构造函数 /// <summary> /// 构造函数 /// </summary> /// <param name="items">项集合</param> /// <param name="rootValue">根元素字段</param> /// <param name="textField">显示文本字段</param> /// <param name="nodeField">节点字段</param> /// <param name="parentField">父节点字段</param> public SelectTreeList(IEnumerable items, string rootValue, string textField, string nodeField, string parentField) { this.rootValue =http://www.mamicode.com/ rootValue; this.valueField = nodeField; this.textField = textField; this.nodeField = nodeField; this.parentField = parentField; Validate(); Init(items); } /// <summary> /// 构造函数 /// </summary> /// <param name="items">项集合</param> /// <param name="rootValue">根元素字段</param> /// <param name="valueField">获取值字段</param> /// <param name="textField">显示文本字段</param> /// <param name="nodeField">节点字段</param> /// <param name="parentField">父节点字段</param> public SelectTreeList(IEnumerable items, string rootValue, string textField, string nodeField, string parentField, string valueField, string selectValue, bool isFinalLevel = false, string Css="") { this.rootValue =http://www.mamicode.com/ rootValue; this.valueField = valueField; this.textField = textField; this.nodeField = nodeField; this.parentField = parentField; this.selectValue =http://www.mamicode.com/ selectValue; this.isFinalLevel = isFinalLevel; this.css = Css; Validate(); Init(items); } #endregion /// <summary> /// 验证各个参数的有效性 /// </summary> public void Validate() { StringBuilder sb = new StringBuilder(); if (string.IsNullOrEmpty(valueField)) sb.AppendLine("获取值字段不能为空"); if (string.IsNullOrEmpty(textField)) sb.AppendLine("显示文本字段不能为空"); if (string.IsNullOrEmpty(nodeField)) sb.AppendLine("节点字段不能为空"); if (string.IsNullOrEmpty(parentField)) sb.AppendLine("父节点字段字段不能为空"); if (sb.Length > 0) throw new Exception("验证错误:" + sb.ToString()); } /// <summary> /// 初始化TreeNodes集合 /// </summary> /// <param name="items"></param> public void Init(IEnumerable items) { foreach (var item in items) { DropTreeNode treeNode = new DropTreeNode(); Type type = item.GetType(); PropertyInfo property = type.GetProperty(this.valueField); object o = property.GetValue(item, null); treeNode.Value = o.ToString(); property = type.GetProperty(this.textField); o = property.GetValue(item, null); treeNode.Text = o.ToString(); property = type.GetProperty(this.nodeField); o = property.GetValue(item, null); treeNode.TreeNodeID = o.ToString(); property = type.GetProperty(this.parentField); o = property.GetValue(item, null); treeNode.ParentTreeNodeID = o.ToString(); if (!string.IsNullOrEmpty(this.css)) { property = type.GetProperty(this.css); o = property.GetValue(item, null); treeNode.Css = o.ToString(); } else treeNode.Css = ""; treeNodes.Add(treeNode); } } #region 字段属性 public List<DropTreeNode> TreeNodes { get { return treeNodes; } set { treeNodes = value; } } public string RootValue { get { return rootValue; } set { rootValue =http://www.mamicode.com/ value; } } public string ValueField { get { return valueField; } set { valueField = value; } } public string TextField { get { return textField; } set { textField = value; } } public string NodeField { get { return nodeField; } set { nodeField = value; } } public string ParentField { get { return parentField; } set { parentField = value; } } #endregion }}
1.B.3,
1.C,下载地址返回顶部 |
作者:ylbtech 出处:http://ylbtech.cnblogs.com/ 本文版权归作者和博客园共有,欢迎转载,但未经作者同意必须保留此段声明,且在文章页面明显位置给出原文连接,否则保留追究法律责任的权利。 |
cs-SelectTree-DropTreeNode, SelectTreeList
声明:以上内容来自用户投稿及互联网公开渠道收集整理发布,本网站不拥有所有权,未作人工编辑处理,也不承担相关法律责任,若内容有误或涉及侵权可进行投诉: 投诉/举报 工作人员会在5个工作日内联系你,一经查实,本站将立刻删除涉嫌侵权内容。