• <menu id="w2i4a"></menu>
  • logo E-iceblue中文文檔

    文檔首頁>>E-iceblue中文文檔>>在 C# 中創(chuàng)建 IF 字段

    在 C# 中創(chuàng)建 IF 字段


    Spire.Doc for .NET是一款專門對 Word 文檔進(jìn)行操作的 .NET 類庫。在于幫助開發(fā)人員無需安裝 Microsoft Word情況下,輕松快捷高效地創(chuàng)建、編輯、轉(zhuǎn)換和打印 Microsoft Word 文檔。擁有近10年專業(yè)開發(fā)經(jīng)驗Spire系列辦公文檔開發(fā)工具,專注于創(chuàng)建、編輯、轉(zhuǎn)換和打印Word/PDF/Excel等格式文件處理,小巧便捷。 

    E-iceblue 功能類庫Spire 系列文檔處理組件均由中國本土團隊研發(fā),不依賴第三方軟件,不受其他國家的技術(shù)或法律法規(guī)限制,同時適配國產(chǎn)操作系統(tǒng)如中科方德、中標(biāo)麒麟等,兼容國產(chǎn)文檔處理軟件 WPS(如 .wps/.et/.dps 等格式


    Spire.Doc for.NET 最新下載



    通常我們需要根據(jù)不同的條件向讀者顯示不同的文本和信息。在這種情況下,我們需要創(chuàng)建 if 字段來決定向讀者顯示哪個結(jié)果。本文重點介紹如何借助 Spire.Doc for .NET 在 C# 中創(chuàng)建 IF 字段。我們一起使用 IF 字段和 MERGEFIELD 字段。


    {IF { MERGEFIELD Count } > "100" "謝謝" "最低訂購量為 100 件"}

    第一步新建一個word文檔。


    Document document = new Document();


    第 2 步為文檔添加一個新部分。


    Section section = document.AddSection();


    第 3 步為該部分添加一個新段落。


    Paragraph paragraph = section.AddParagraph();


    第 4 步定義創(chuàng)建 IF 字段的方法。


    CreateIfField(document, paragraph);


    第 5 步定義合并數(shù)據(jù)。


    string[] fieldName = {"Count"};
    string[] fieldValue = { "2" };


    第 6 步將數(shù)據(jù)合并到 IF 字段中。


    document.MailMerge.Execute(fieldName, fieldValue);


    第 7 步更新文檔中的所有字段。


    document.IsUpdateFields = true;


    第 8 步將文檔保存到文件中。


    document.SaveToFile("sample.docx", FileFormat.Docx);


    以下 CreateIfField() 方法顯示了如何創(chuàng)建 IF 字段,如:

    {IF { MERGEFIELD Count } > "100" "Thanks" " 最低訂購量為 100 個單位 "}


    static void CreateIfField(Document document, Paragraph paragraph)
    {
    IfField ifField = new IfField(document);
    ifField.Type = FieldType.FieldIf;
    ifField.Code = "IF ";
    paragraph.Items.Add(ifField);
    
    paragraph.AppendField("Count",FieldType.FieldMergeField);
    paragraph.AppendText(" > ");
    paragraph.AppendText("\"100\" ");
    paragraph.AppendText("\"Thanks\" ");
    paragraph.AppendText("\"The minimum order is 100 units\"");
    
    IParagraphBase end = document.CreateParagraphItem(ParagraphItemType.FieldMark);
    (end as FieldMark).Type = FieldMarkType.FieldEnd;
    paragraph.Items.Add(end);
    ifField.End = end as FieldMark;
    }


    檢查有效截圖如下:

    如何在 C# 中創(chuàng)建 IF 字段

    完整代碼:


    using Spire.Doc;
    using Spire.Doc.Documents;
    using Spire.Doc.Fields;
    using Spire.Doc.Interface;
    namespace CreatIF
    {
    class Program
    {
    static void Main(string[] args)
    {
    Document document = new Document();
    Section section = document.AddSection();
    Paragraph paragraph = section.AddParagraph();
    CreateIfField(document, paragraph);
    string[] fieldName = { "Count" };
    string[] fieldValue = { "2" };
    
    document.MailMerge.Execute(fieldName, fieldValue);
    document.IsUpdateFields = true;
    document.SaveToFile("sample.docx", FileFormat.Docx);
    }
    
    static void CreateIfField(Document document, Paragraph paragraph)
    {
    IfField ifField = new IfField(document);
    ifField.Type = FieldType.FieldIf;
    ifField.Code = "IF ";
    paragraph.Items.Add(ifField);
    paragraph.AppendField("Count", FieldType.FieldMergeField);
    paragraph.AppendText(" > ");
    paragraph.AppendText("\"100\" ");
    paragraph.AppendText("\"Thanks\" ");
    paragraph.AppendText("\"The minimum order is 100 units\"");
    IParagraphBase end = document.CreateParagraphItem(ParagraphItemType.FieldMark);
    (end as FieldMark).Type = FieldMarkType.FieldEnd;
    paragraph.Items.Add(end);
    ifField.End = end as FieldMark;
    }
    
    }
    }

    歡迎下載|體驗更多E-iceblue產(chǎn)品

    獲取更多信息請咨詢慧都在線客服  ;技術(shù)交流Q群(767755948)


    掃碼咨詢


    添加微信 立即咨詢

    電話咨詢

    客服熱線
    023-68661681

    TOP
    三级成人熟女影院,欧美午夜成人精品视频,亚洲国产成人乱色在线观看,色中色成人论坛 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();