第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時綁定郵箱和手機(jī)立即綁定
已解決430363個問題,去搜搜看,總會有你想問的

在字頭表中添加頁碼 C#

在字頭表中添加頁碼 C#

C#
qq_花開花謝_0 2023-07-22 16:09:16
我在 word 中創(chuàng)建了一個 1x3 表格作為標(biāo)題。這就是我想要的樣子。左文本 中文本 頁碼:我希望 PageNumber 單元格看起來像這樣 -頁碼:X/Y我已經(jīng)成功地完成了單元格(1,1)和(1,2)。我發(fā)現(xiàn)這可以幫助我處理單元格 (1,3),但它沒有按我喜歡的方式工作。我知道如何獲取文檔的總數(shù)。我不確定如何正確實(shí)施它。Range rRange = restheaderTable.Cell(1, 3).Range; rRange.End = rRange.End - 1; oDoc.Fields.Add(rRange, Type: WdFieldType.wdFieldPage, Text: "Page Number: ");我什至無法在單元格中顯示文本“頁碼:”?,F(xiàn)在它所擁有的只是一個數(shù)字。
查看完整描述

1 回答

?
明月笑刀無情

TA貢獻(xiàn)1828條經(jīng)驗(yàn) 獲得超4個贊

您要查找的字段枚舉是WordWdFieldType.wdFieldNumPages。


下一個障礙是如何構(gòu)造字段+文本+字段,因?yàn)楫?dāng)按此順序添加內(nèi)容時,Word 的行為不“合乎邏輯”。目標(biāo)點(diǎn)保留在插入的字段之前。因此,要么需要向后工作,要么在每一位內(nèi)容之后移動目標(biāo)范圍。


這是我演示后一種方法的一些代碼。插入文本和插入字段位于兩個單獨(dú)的過程中,這兩個過程將目標(biāo)Range和文本(無論是文字還是字段文本)作為參數(shù)。這樣,可以邏輯地構(gòu)建字段代碼(第 x 頁,共 n 頁)。目標(biāo)Range從兩個過程返回,已經(jīng)折疊到其端點(diǎn),準(zhǔn)備附加更多內(nèi)容。


請注意,我更喜歡使用字段的文本(包括任何字段開關(guān))來構(gòu)造字段,而不是指定字段類型(枚舉WdFieldType)。這提供了更大的靈活性。我還強(qiáng)烈建議將該P(yáng)reserveFormatting參數(shù)設(shè)置為false,因?yàn)樵搕rue設(shè)置可能會在更新字段時導(dǎo)致非常奇怪的格式。它應(yīng)該只在非常特定的實(shí)例中使用(通常涉及鏈接表)。


private void btnInsertPageNr_Click(object sender, EventArgs e)

{

    getWordInstance();

    Word.Document doc = null;

    if (wdApp.Documents.Count > 0)

    {

        doc = wdApp.ActiveDocument;

        Word.Range rngHeader = doc.Sections[1].Headers[Microsoft.Office.Interop.Word.WdHeaderFooterIndex.wdHeaderFooterPrimary].Range;

        if (rngHeader.Tables.Count > 0)

        {

            Word.Table tbl = rngHeader.Tables[1];

            Word.Range rngPageNr = tbl.Range.Cells[tbl.Range.Cells.Count].Range;

            //Collapse the range so that it's within the cell and 

            //doesn't include the end-of-cell markers

            object oCollapseStart = Word.WdCollapseDirection.wdCollapseStart;

            rngPageNr.Collapse(ref oCollapseStart);

            rngPageNr = InsertNewText(rngPageNr, "Page ");

            rngPageNr = InsertAField(rngPageNr, "Page");

            rngPageNr = InsertNewText(rngPageNr, " of ");

            rngPageNr = InsertAField(rngPageNr, "NumPages");

        }

    }

}


private Word.Range InsertNewText(Word.Range rng, string newText)

{

    object oCollapseEnd = Word.WdCollapseDirection.wdCollapseEnd;

    rng.Text = newText;

    rng.Collapse(ref oCollapseEnd);

    return rng;

}


private Word.Range InsertAField(Word.Range rng,

                      string fieldText)

{

    object oCollapseEnd = Word.WdCollapseDirection.wdCollapseEnd;

    object unitCharacter = Word.WdUnits.wdCharacter;

    object oOne = 1;

    Word.Field fld = rng.Document.Fields.Add(rng, missing, fieldText, false);


    Word.Range rngField = fld.Result;

    rngField.Collapse(ref oCollapseEnd);

    rngField.MoveStart(ref unitCharacter, ref oOne);

    return rngField;

}


查看完整回答
反對 回復(fù) 2023-07-22
  • 1 回答
  • 0 關(guān)注
  • 173 瀏覽

添加回答

舉報

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號