Example #1
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="property"></param>
        /// <param name="propValue"></param>
        /// <param name="parent"></param>
        public override void BuildChild(PropertyInfo property, object propValue, ITreeItemNode parent)
        {
            if (!(propValue is IDictionary dictionary))
            {
                return;
            }

            var result = new T();

            result.Initialize(new TreeItemNodeInitializeArgs(dictionary));

            foreach (var item in dictionary)
            {
                var builder = TreeItemTypeBuilderFactory.GetTreeItemTypeBuilder(item);
                if (builder == null)
                {
                    continue;
                }

                var child = builder.Build(item);
                result.AddChild(child);
            }

            parent?.AddChild(result);
        }
        /// <summary>
        ///
        /// </summary>
        /// <param name="property"></param>
        /// <param name="propValue"></param>
        /// <param name="parent"></param>
        public override void BuildChild(PropertyInfo property, object propValue, ITreeItemNode parent)
        {
            var result = new T();

            result.Initialize(new TreeItemNodeInitializeArgs(property, propValue, parent));

            parent.AddChild(result);
        }
Example #3
0
        /// <summary>
        ///
        /// </summary>
        /// <param name="property"></param>
        /// <param name="propValue"></param>
        /// <param name="parent"></param>
        public override void BuildChild(PropertyInfo property, object propValue, ITreeItemNode parent)
        {
            var builder = TreeItemTypeBuilderFactory.GetTreeItemTypeBuilder(property.PropertyType);

            if (builder == null)
            {
                return;
            }

            var child = builder.Build(propValue);

            parent.AddChild(child);
        }
 /// <summary>
 ///
 /// </summary>
 /// <param name="property"></param>
 /// <param name="propValue"></param>
 /// <param name="parent"></param>
 public override void BuildChild(PropertyInfo property, object propValue, ITreeItemNode parent)
 {
 }
 /// <summary>
 ///
 /// </summary>
 /// <param name="property"></param>
 /// <param name="propValue"></param>
 /// <param name="parent"></param>
 public abstract void BuildChild(PropertyInfo property, object propValue, ITreeItemNode parent);
Example #6
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="node"></param>
 public void AddChild(ITreeItemNode node)
 {
     Childrens.Add((ExceptionTreeItemNode)node);
 }
Example #7
0
 /// <summary>
 ///
 /// </summary>
 /// <param name="propertyInfo"></param>
 /// <param name="value"></param>
 /// <param name="parentNode"></param>
 public TreeItemNodeInitializeArgs(PropertyInfo propertyInfo, object value, ITreeItemNode parentNode)
 {
     PropertyInfo = propertyInfo;
     Value        = value;
     ParentNode   = parentNode;
 }