private void CreateNodeTitle(IGlymaNode node, ref Paragraph paragraph) { if (node.NodeType.Equals(MapManager.NodeTypes["CompendiumMapNode"])) { var text = new Span(string.IsNullOrEmpty(node.Name) ? "(No Name)" : node.Name) { //ForeColor = Colors.DodgerBlue, UnderlineDecoration = UnderlineTypes.Line }; var hyperlinkStart = new HyperlinkRangeStart(); var hyperlinkEnd = new HyperlinkRangeEnd(); hyperlinkEnd.PairWithStart(hyperlinkStart); var hyperlinkInfo = new HyperlinkInfo { NavigateUri = node.Id.ToLongString(), Target = HyperlinkTargets.Self, IsAnchor = true }; hyperlinkStart.HyperlinkInfo = hyperlinkInfo; paragraph.Inlines.Add(hyperlinkStart); paragraph.Inlines.Add(text); paragraph.Inlines.Add(hyperlinkEnd); } else { var text = new Span(node.Name); paragraph.Inlines.Add(text); } }
private void CreateLink(string link, ref Paragraph paragraph) { var hyperlinkStart = new HyperlinkRangeStart(); var hyperlinkEnd = new HyperlinkRangeEnd(); hyperlinkEnd.PairWithStart(hyperlinkStart); link = link.Replace(" ", "20%"); Uri uri; if (Uri.TryCreate(link, UriKind.Absolute, out uri)) { var hyperlinkInfo = new HyperlinkInfo { NavigateUri = link, Target = HyperlinkTargets.Blank }; hyperlinkStart.HyperlinkInfo = hyperlinkInfo; paragraph.Inlines.Add(hyperlinkStart); var spanLink = new Span(link) { FontSize = 12, ForeColor = Colors.DodgerBlue, UnderlineDecoration = UnderlineTypes.Line }; paragraph.Inlines.Add(spanLink); paragraph.Inlines.Add(hyperlinkEnd); } else { var spanLink = new Span(link) { FontSize = 12, ForeColor = Colors.DodgerBlue, UnderlineDecoration = UnderlineTypes.Line }; paragraph.Inlines.Add(spanLink); } }