public RichTextItem AddItem(string caption, string value, int imageIndex) { foreach (RichTextItem rti in _items) { rti.Dock = DockStyle.Top; } RichTextItem newItem = CreateItem(); if (_items.Count <= 0) { newItem.DisableSpliter = true; } newItem.HeadCaption = caption; newItem.Text = value; newItem.ImageIndex = imageIndex; _items.Add(newItem); Relayout(); newItem.Visible = true; _items[_items.Count - 1].Dock = DockStyle.Fill; return(newItem); }
private static RichTextItem AnalyzeTag(CommonXmlNode node) { if (node.TagName == "font") { var colorCode = node.GetAttribute("color").Value; var c = ColorTranslator.FromHtml(colorCode); var color = System.Windows.Media.Color.FromRgb(c.R, c.G, c.B); var item = new RichTextItem { Text = node.InnerText, Foreground = color }; return(item); } return(null); }
public RichTextItem CreateItem(bool visible = false) { RichTextItem newItem = new RichTextItem(this, visible); newItem.ImageList = _imageList; newItem.ImageAlign = _headImageAlign; //newItem.HeadCaption = caption; //newItem.ImageIndex = imageIndex; newItem.HeadWidth = _headWidth; newItem.SelColor = _selColor; newItem.BackColor = _backColor; newItem.HeaderBgColor = _headerBgColor; newItem.HeaderForceColor = _headForceColor; newItem.Items = _items; newItem.OnHeadClick += OnHeadClick; newItem.OnTextChanged += OnEditorChanged; return(newItem); }
private static void AddRichTextItem(IEnumerable <CommonXmlNode> nodes, List <RichTextItem> items) { foreach (var node in nodes) { if (node.NodeType == XmlNodeType.Text) { var array = node.InnerText.UnifiedBreakLine().Split('\n'); foreach (var text in array) { var paragraph = new RichTextItem { TextType = RichTextType.Paragraph }; paragraph.AddChildren(new RichTextItem { Text = text, }); items.Add(paragraph); } } else { if (node.TagName == "font") { var paragraph = new RichTextItem { TextType = RichTextType.Paragraph, Children = new [] { AnalyzeTag(node) } }; items.Add(paragraph); } else if (node.TagName == "a") { var link = node.GetAttribute("href").Value; var paragraph = new RichTextItem { TextType = RichTextType.Paragraph }; var item = new RichTextItem { TextType = RichTextType.Hyperlink, Link = link }; foreach (var child in node.ChildNodes) { item.AddChildren(AnalyzeTag(child)); } paragraph.AddChildren(item); items.Add(paragraph); } else { var paragraph = new RichTextItem { TextType = RichTextType.Paragraph }; items.Add(paragraph); } } } }