예제 #1
0
        /// <summary>
        /// 创建一个配置组节点
        /// </summary>
        /// <param name="obj">配置组信息</param>
        /// <returns></returns>
        protected TreeNode NewConfigurationSectionGroupNode(string name, object obj)
        {
            ExTreeNode node = new ExTreeNode(0, 0, name, null, obj, false);

            node.Nodes.Add("获取配置组信息失败!");
            return(node);
        }
예제 #2
0
        private void treeConfig_BeforeExpand(object sender, TreeViewCancelEventArgs e)
        {
            if (!(e.Node is ExTreeNode))
            {
                return;
            }

            ExTreeNode eNode = e.Node as ExTreeNode;

            if (eNode.ChildInitFlag)
            {
                return;
            }

            eNode.ChildInitFlag = true;

            if (object.ReferenceEquals(null, eNode.Tag) || !(eNode.Tag is ConfigurationSectionGroup))
            {
                return;
            }

            ConfigurationSectionGroup group = eNode.Tag as ConfigurationSectionGroup;
            object obj = null;
            IEnumerator <PropertyInfo> enumerator = null;
            TreeNode node = null;

            eNode.Nodes.Clear();

            //处理定义的所有配置组单元
            enumerator = ConfigurationHelper.GetDeclaredSubSectionGroups(group.GetType());
            while (enumerator.MoveNext())
            {
                obj              = ConfigurationHelper.GetConfigurationSectionGroup(group, enumerator.Current.Name, enumerator.Current.PropertyType, true, true);
                node             = NewConfigurationSectionGroupNode(enumerator.Current.Name, obj);
                node.ToolTipText = GetDescription(enumerator.Current);
                e.Node.Nodes.Add(eNode);
            }

            //处理定义的所有配置段单元
            enumerator = ConfigurationHelper.GetDeclaredSubSections(group.GetType());
            while (enumerator.MoveNext())
            {
                obj              = ConfigurationHelper.GetConfigurationSection(group, enumerator.Current.Name, enumerator.Current.PropertyType, true, true);
                node             = NewConfigurationSectionNode(enumerator.Current.Name, obj);
                node.ToolTipText = GetDescription(enumerator.Current);
                e.Node.Nodes.Add(node);
            }
        }
예제 #3
0
 /// <summary>
 /// ����һ��������ڵ�
 /// </summary>
 /// <param name="obj">��������Ϣ</param>
 /// <returns></returns>
 protected TreeNode NewConfigurationSectionGroupNode(string name, object obj)
 {
     ExTreeNode node = new ExTreeNode(0, 0, name, null, obj, false);
     node.Nodes.Add("��ȡ��������Ϣʧ�ܣ�");
     return node;
 }