将ms字超链接链接到文档中的某个位置

时间:2013-06-13 11:05:34

标签: c# hyperlink ms-word

在尝试以编程方式创建ms word文档时,我遇到了一个问题:

我试图找到(没有成功)创建HyperLink或其他可以完成工作的方法,这会将用户导航到文档中的其他位置

一个地方可以是我在

之前插入的书签或其他段落对象

在单词应用程序中,我选择一个文本,右键单击,按超链接并将链接指向“文档中的位置”

我无法在C#中找到解决方法

帮助?

2 个答案:

答案 0 :(得分:1)

如果您希望更频繁地使用其他Word文档,可以查看Latex,它可以在文档中创建非常快速的引用,但生成PDF。现在的问题是,你的Word在以后仍然可以编辑,如果是,那么我会选择Ranger.InsertCrossReference。

关于InsertCrossReference的示例:

http://msdn.microsoft.com/fr-fr/library/microsoft.office.tools.word.bookmark.insertcrossreference.aspx

关于什么是乳胶。

http://fr.wikipedia.org/wiki/LaTeX

在这里,您可以在线写下您的乳胶文件。

https://www.sharelatex.com/

答案 1 :(得分:1)

除了添加CrossReference之外,还可以使用超链接

虽然据说超链接链接到网址,但它也可以通过这样使用它直接向您发送文档内文本:

        Microsoft.Office.Interop.Word.Paragraph oPara2;
        object oRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
        oPara2 = oDoc.Content.Paragraphs.Add(ref oRng);
        oPara2.Range.Text = "Heading 2";
        oPara2.Format.SpaceAfter = 6;
        oPara2.Range.InsertParagraphAfter();
        oDoc.Bookmarks.Add("BookmakrName3", oRng);


        object oAddress = "#BookmakrName3";

        //Add text after the chart.
        wrdRng = oDoc.Bookmarks.get_Item(ref oEndOfDoc).Range;
        wrdRng.InsertParagraphAfter();
        wrdRng.InsertAfter("Click here to jump");
        wrdRng.Hyperlinks.Add(wrdRng, ref oAddress);

请注意,在给定地址中的书签名称前面有一个“#”..这就是技巧