/// <summary>
        /// Abstract base class for all markdown elements with one child element.
        /// </summary>
        /// <param name="Document">Markdown document.</param>
        /// <param name="Child">Child element.</param>
        public MarkdownElementSingleChild(MarkdownDocument Document, MarkdownElement Child)
            : base(Document)
        {
            NestedBlock NestedBlock = Child as NestedBlock;

            if (NestedBlock != null && NestedBlock.HasOneChild)
            {
                this.child = NestedBlock.FirstChild;
            }
            else
            {
                this.child = Child;
            }
        }
Exemple #2
0
        public static TreeGridItem ToTreeGridItem(this NestedBlock nested)
        {
            //TreeGridItem item = nested.Definition.ToTreeGridItem();
            TreeGridItem item = new TreeGridItem
            {
                Tag    = nested,
                Values = nested.Definition.ToValues()
            };

            foreach (var nestedBlock in nested)
            {
                item.Children.Add(nestedBlock.ToTreeGridItem());
            }

            return(item);
        }
Exemple #3
0
        private NestedBlock[] TryGetParentSelectedNestedBlocks()
        {
            if (_tv_parent.SelectedItem is null)
            {
                return(null);
            }
            int selCount = _tv_parent.SelectedItems.Count();

            NestedBlock[] nested = new NestedBlock[selCount];

            var selected = _tv_parent.SelectedItems.ToArray();

            for (int i = 0; i < selCount; i++)
            {
                nested[i] = ((TreeGridItem)selected[i]).ToNestedBlock();
            }

            return(nested);
        }