//// This code is part of Document Solutions for Word demos.// Copyright (c) MESCIUS inc. All rights reserved.//usingSystem;usingGrapeCity.Documents.Word; namespaceDsWordWeb.Demos{// This sample shows how to insert hyperlinks into a Word document// using the Range.Hyperlinks collection.// It adds some external hyperlinks to Web sites,// and also hyperlinks to bookmarks within the document. // This sample is very similar to HyperlinkFields,// but unlike that sample uses hyperlinks collections// rather than HYPERLINK fields.publicclassHyperlinks {publicGcWordDocumentCreateDocx() {var doc = newGcWordDocument();var section = doc.Body.Sections.First;var pars = section.GetRange().Paragraphs; // 0. Paragraph with an external hyperlink:var p = pars.Add("It is easy to add hyperlinks to document content via Range.Hyperlinks collection. " +"Following is a hyperlink to a web address. ");// There are different Hyperlinks.Add() overloads that allow to specify// different hyperlink options such as screen tips etc:var hl0 = p.GetRange().Hyperlinks.Add(newUri("http://www.google.com"), null, "Click to go to www.google.com."); // 1. Paragraph with an external hyperlink with its own style: p = pars.Add("Next is another hyperlink, this time with its own style and a custom tooltip. ");var hl1 = p.GetRange().Hyperlinks.Add(newUri("https://www.grapecity.com/en/"), null, "Click to go to www.grapecity.com.", "Click to open GrapeCity web page"); // 2. Link to a bookmark within the document:// We add bookmarks at the top and bottom of the document,// and set up links to jump between them.var bmkTop = "BookmarkTop";var bmkBot = "BookmarkEnd"; p = pars.Add("Hyperlinks can also point to locations within the document. " +"We add some filler paragraphs below, followed by a paragraph " +$"with a bookmark named '{bmkBot}' attached to it. " +"The next hyperlink jumps to that bookmark. ");// Attach a bookmark to this paragraph so we can jump back here: p.GetRange().Bookmarks.Add(bmkTop);// A hyperlink to a bookmark:var hl2 = p.GetRange().Hyperlinks.Add($"{bmkBot}", $"Click to jump to {bmkBot} at the end of the document.", $"Jumo to {bmkBot}"); hl2.GetRange().Runs.First.Style = doc.Styles[BuiltInStyleId.FollowedHyperlink]; // Add filler, bookmarked paragraph after it, and// a link to jump back:for (int i = 0; i < 100; ++i) pars.Add($"Filler paragraph {i}.");var pb = pars.Add($"{bmkBot} points here. "); pb.GetRange().Bookmarks.Add(bmkBot);var hl3 = pb.GetRange().Hyperlinks.Add($"{bmkTop}", $"Jump back to {bmkTop}.", $"Jumo to {bmkTop}"); hl3.GetRange().Runs.First.Style = doc.Styles[BuiltInStyleId.FollowedHyperlink]; // Done:return doc; } }}