2013-06-13 58 views
0

雖然試圖programmaticly創建MS Word文檔,我遇到了一個問題:鏈接的MS Word的超鏈接到一個地方文檔中

我試圖找到(沒有成功)的方式來創建超鏈接或東西否則,會做的工作,將用戶導航到另一個地方的文檔

的地方可以是一個書籤或其他一些段落對象

在Word應用程序之前,我插入,我選擇一個文本,右鍵單擊,按超鏈接並將鏈接指向「文檔中的位置」

我不能在C#中找到它的方法#

help?

+1

十字參考是您正在尋找的術語,這可能會使Google更容易。我想你需要[Range.InsertCrossReference](http://msdn.microsoft.com/en-us/library/microsoft.office.interop.word.range.insertcrossreference(v = office.11​​).aspx)。 – Stefan

回答

1

旁邊添加一個交叉引用,也有使用超級鏈接

雖然超級鏈接據說鏈接到網頁地址的可能性,它也可以直接給你在文檔文本使用它是這樣的:

 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); 

注意,有一個給出的地址書籤名稱前「#」 ..這是招

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/