我正在將vb.net套件的幫助器轉換爲c#。下面的代碼片段工作正常,在VB.Net不能在C#版本中使用Interop.Word設置書籤範圍
para2 = oDoc.Content.Paragraphs.Add(oDoc.Bookmarks.Item("\endofdoc").Range)
其中PARA2是oftype Word.Paragraph
轉換後的C#代碼設置書籤的範圍,我在許多文章看到的是
var bookmarkRange= oDoc.Bookmarks.get_Item((object)"\\endofdoc").Range;
var para2 = oDoc.Content.Paragraphs.Add(bookmarkRange);
ReSharper說這需要使用一個索引屬性,當它改變時將其轉換爲
var bookmarkRange = oDoc.Bookmarks.Item[(object)"\\endofdoc"].Range;
既不版本建立,該錯誤是
錯誤1「Microsoft.Office.Interop.Word.Bookmarks」不包含關於「項」和沒有擴展方法「項」接受型的第一參數'的定義Microsoft.Office.Interop.Word.Bookmarks'可以找到(是否缺少using指令或程序集引用?)F:\ BATLGroup \ AzureStorageContainer \ AzureStorageContainer \ AzureStorageContainer \ AzureHelpers \ OfficeAppHelpers.cs 19 44 AzureStorageContainer
我參考
大會的Microsoft.Office.Interop.Word C:\ Program Files文件(x86)的\微軟的Visual Studio 14.0 \ Visual Studio工具用於Office \ PIA \ Office15 \ Microsoft.Office.Interop.Word.dll
任何幫助讚賞。
附加題:
do
{
bookmarkRange.ParagraphFormat.SpaceAfter = 6;
bookmarkRange.InsertAfter("A line of text");
bookmarkRange.InsertParagraphAfter();
} while (pos >= bookmarkRange.Information[WdInformation.wdVerticalPositionRelativeToPage]);
本節犯錯誤的bookmarkRange.Information。它說你不能比較一個int和一個對象。 wdVertical ....應該返回一個數字,表示距離頁面頂部的距離。
哇,我試過的每一個可能的迭代,包括括號中的衆多,我很愚蠢我錯過了那一個。我還有一個問題。如果您願意,請參閱後期更新。 – dinotom
它發生在我們最好的;-)答案更新。 – DanL
在C#中\必須被轉義,所以它是「\\ endofdoc」 – dinotom