Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Welcome To Ask or Share your Answers For Others

Categories

0 votes
150 views
in Technique[技术] by (71.8m points)

c# - how can we open a word file with specific page number in c sharp?

How can we open a word file with specific page number?

This is the the code I used to open the file:

public static Application Open(string fileName)
{
    object fileNameAsObject = (object)fileName;
    Application wordApplication;
    try
    {
        wordApplication = new Application();
        object readnly = false;
        object missing = System.Reflection.Missing.Value;
        wordApplication.Documents.Open(ref fileNameAsObject, ref missing, ref readnly);

        return wordApplication;
    }
    catch (Exception ex)
    {
        LogEntry log = new LogEntry();
        log.Categories.Add("Trace");
        log.Message = ex.ToString();
        Logger.Write(log, "Trace");
        throw new System.IO.FileLoadException("File cannot be opened");
    }
    finally
    {
        wordApplication = null;
    }
}

How can I use the Vba code Selection.GoTo What:=wdGoToPage, Which:=wdGoToFirst, Count:=3, Name:="" equivalent in C# to get the page that I want? Or any other suggestions?

See Question&Answers more detail:os

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
Welcome To Ask or Share your Answers For Others

1 Reply

0 votes
by (71.8m points)

The equivalent C# interop would be:

object what = Microsoft.Office.Interop.Word.WdGoToItem.wdGoToPage;
object which = Microsoft.Office.Interop.Word.WdGoToDirection.wdGoToFirst;
object count = 3;

wordApplication.Selection.GoTo(ref what, ref which, ref count, ref missing);

与恶龙缠斗过久,自身亦成为恶龙;凝视深渊过久,深渊将回以凝视…
OGeek|极客中国-欢迎来到极客的世界,一个免费开放的程序员编程交流平台!开放,进步,分享!让技术改变生活,让极客改变未来! Welcome to OGeek Q&A Community for programmer and developer-Open, Learning and Share
Click Here to Ask a Question

...