`

C# 给Word文档添加内容控件

阅读更多

本篇文章中将介绍如何在C#中向Word文档添加几种类型的内容控件的方法。需要借助第三方组件Spire.Doc for .NET的帮助,下面是具体代码操作。(本方法转载自http://www.cnblogs.com/Yesi/p/5580845.html

1.添加组合内容控件

 

//给段落添加一个内容控件并指定它的SDT type为Combo Box
StructureDocumentTagInline sd = new StructureDocumentTagInline(document);
paragraph.ChildObjects.Add(sd);
sd.SDTProperties.SDTType = SdtType.ComboBox;

//创建一个Combo Box, 添加选项并把它赋值给内容控件
SdtComboBox cb = new SdtComboBox();
cb.ListItems.Add(new SdtListItem("Cat"));
cb.ListItems.Add(new SdtListItem("Dog"));
sd.SDTProperties.ControlProperties = cb;
 
//设置显示文本
TextRange rt = new TextRange(document);
rt.Text = cb.ListItems[0].DisplayText;
sd.SDTContent.ChildObjects.Add(rt);

 

 

效果展示:


 

2.添加文本内容控件

 

paragraph = section.AddParagraph();
sd = new StructureDocumentTagInline(document);
paragraph.ChildObjects.Add(sd);
sd.SDTProperties.SDTType = SdtType.Text;
SdtText text = new SdtText(true);
text.IsMultiline = true;
sd.SDTProperties.ControlProperties = text;
rt = new TextRange(document);
rt.Text = "Text";
sd.SDTContent.ChildObjects.Add(rt);

 

 

效果展示:


 

 

3.添加图片内容控件

 

paragraph = section.AddParagraph();
sd = new StructureDocumentTagInline(document);
paragraph.ChildObjects.Add(sd);
sd.SDTProperties.SDTType = SdtType.Picture;
DocPicture pic = new DocPicture(document) { Width = 10, Height = 10 };
pic.LoadImage(Image.FromFile("C:\\Icon.jpg"));
sd.SDTContent.ChildObjects.Add(pic);

 

 

效果展示:


 

4.添加日期选取器控件

 

paragraph = section.AddParagraph();
sd = new StructureDocumentTagInline(document);
paragraph.ChildObjects.Add(sd);
sd.SDTProperties.SDTType = SdtType.DatePicker;
SdtDate date = new SdtDate();
date.CalendarType = CalendarType.Default;
date.DateFormat = "yyyy.MM.dd";
date.FullDate = DateTime.Now;
sd.SDTProperties.ControlProperties = date;
rt = new TextRange(document);
rt.Text = "1990.02.08";
sd.SDTContent.ChildObjects.Add(rt);

 

效果展示:

5.添加下拉表内容控件

 

paragraph = section.AddParagraph();
sd = new StructureDocumentTagInline(document);
paragraph.ChildObjects.Add(sd);
sd.SDTProperties.SDTType = SdtType.DropDownList;
SdtDropDownList sddl = new SdtDropDownList();
sddl.ListItems.Add(new SdtListItem("Harry"));
sddl.ListItems.Add(new SdtListItem("Jerry"));
sd.SDTProperties.ControlProperties = sddl;
rt = new TextRange(document);
rt.Text = sddl.ListItems[0].DisplayText;
sd.SDTContent.ChildObjects.Add(rt);

 

 

效果展示:

 

 

全部代码:

using System;
using System.Drawing;
using Spire.Doc;
using Spire.Doc.Documents;
using Spire.Doc.Fields; 

namespace Insert_content_control_in_word_document
{
    class Program
    {
        static void Main(string[] args)
        {
            //创建一个新的Word文档
            Document document = new Document();
            Section section = document.AddSection();
            Paragraph paragraph = section.AddParagraph(); 

            //添加组合框内容控件
            StructureDocumentTagInline sd = new StructureDocumentTagInline(document);
            paragraph.ChildObjects.Add(sd);
            sd.SDTProperties.SDTType = SdtType.ComboBox;
            SdtComboBox cb = new SdtComboBox();
            cb.ListItems.Add(new SdtListItem("Cat"));
            cb.ListItems.Add(new SdtListItem("Dog"));
            sd.SDTProperties.ControlProperties = cb;
            TextRange rt = new TextRange(document);
            rt.Text = cb.ListItems[0].DisplayText;
            sd.SDTContent.ChildObjects.Add(rt);

            //添加文本内容控件
            paragraph = section.AddParagraph();
            sd = new StructureDocumentTagInline(document);
            paragraph.ChildObjects.Add(sd);
            sd.SDTProperties.SDTType = SdtType.Text;
            SdtText text = new SdtText(true);
            text.IsMultiline = true;
            sd.SDTProperties.ControlProperties = text;
            rt = new TextRange(document);
            rt.Text = "Text";
            sd.SDTContent.ChildObjects.Add(rt); 

            //添加图片内容控件
            paragraph = section.AddParagraph();
            sd = new StructureDocumentTagInline(document);
            paragraph.ChildObjects.Add(sd);
            sd.SDTProperties.SDTType = SdtType.Picture;
            DocPicture pic = new DocPicture(document) { Width = 10, Height = 10 };
            pic.LoadImage(Image.FromFile("C:\\Icon.jpg"));
            sd.SDTContent.ChildObjects.Add(pic);
 
            //添加日期选取器内容控件
            paragraph = section.AddParagraph();
            sd = new StructureDocumentTagInline(document);
            paragraph.ChildObjects.Add(sd);
            sd.SDTProperties.SDTType = SdtType.DatePicker;
            SdtDate date = new SdtDate();
            date.CalendarType = CalendarType.Default;
            date.DateFormat = "yyyy.MM.dd";
            date.FullDate = DateTime.Now;
            sd.SDTProperties.ControlProperties = date;
            rt = new TextRange(document);
            rt.Text = "1990.02.08";
            sd.SDTContent.ChildObjects.Add(rt);
 
            //添加下拉列表内容控件
            paragraph = section.AddParagraph();
            sd = new StructureDocumentTagInline(document);
            paragraph.ChildObjects.Add(sd);
            sd.SDTProperties.SDTType = SdtType.DropDownList;
            SdtDropDownList sddl = new SdtDropDownList();
            sddl.ListItems.Add(new SdtListItem("Harry"));
            sddl.ListItems.Add(new SdtListItem("Jerry"));
            sd.SDTProperties.ControlProperties = sddl;
            rt = new TextRange(document);
            rt.Text = sddl.ListItems[0].DisplayText;
            sd.SDTContent.ChildObjects.Add(rt); 

            //保存并重启文件
            string resultfile = "sample.docx";
            document.SaveToFile(resultfile, FileFormat.Docx);
            System.Diagnostics.Process.Start(resultfile);           
        }
    }
}

 

 

以上全部内容是在Word文档中添加不同类型的类容控件的操作方法介绍

本文完。

 

  • 大小: 9.8 KB
  • 大小: 2.5 KB
  • 大小: 398.8 KB
  • 大小: 9.9 KB
  • 大小: 3.7 KB
分享到:
评论

相关推荐

    C#操作Word——C#向Word文档中写入文字

    本实例中,首先创建了一个Windows窗体应用程序,然后使用C#操作Word文档,添加文本内容到Word文档中。 知识点1:Word文档的Range属性 Word文档中的Range属性是用来定义文档中的文本范围的。通过使用Range属性,...

    C# 定位Word文档中的某个位置插入文本

    ### C# 定位Word文档中的某个位置插入文本 在日常工作中,经常需要对Word文档进行自动化处理,比如批量修改、插入数据等操作。本文将详细介绍如何使用C#语言定位到Word文档中的某个位置并插入文本。具体实现方法...

    c#操作word的编辑控件.rarc#操作word的编辑控件.rar

    2. **创建Word文档**: 在C#中,你可以使用`ApplicationClass`对象的`Documents.Add`方法创建一个新的Word文档。例如: ```csharp Word.Application wordApp = new Word.Application(); Word.Document doc = ...

    C# 源码 WORD控件

    "C# 源码 WORD控件"提供了一个自定义控件,可以嵌入到WinForms窗口中,用于显示和操作Word文档。这增强了用户交互,无需通过外部Word应用程序即可处理文档。 2. **Microsoft Office Interop**: 实现这个功能的...

    C#向Word文档中添加内容控件的方法示例

    下面就来看看如何使用C#给word文档添加组合框、文本、图片、日期选取器及下拉列表等内容控件(这里我借助了一个word组件Spire.Doc)。 添加组合框内容控件 组合框用于显示用户可以选择的项目列表。和下拉列表不同的...

    c# word编辑器,winform 编辑器,word控件,word相关大全

    首先,"C# Word编辑器"是指在C#编程语言中创建的应用程序,能够对Word文档进行读取、编辑和保存等操作。这通常通过Microsoft的COM组件(Component Object Model)接口来实现,即使用InterOp服务,它可以调用Office...

    c#操作word的编辑控件

    在.NET框架下,C#是一种常用...通过学习和理解这些代码,你可以更好地掌握如何在C# WinForms应用中操作和编辑Word文档。这将帮助你创建功能丰富的文档编辑工具,满足用户在不直接使用Word软件的情况下编辑文档的需求。

    c# winform 显示word

    c# winform 显示word 解决了 不能在winform窗体上显示word文档的问题 该程序能完美的将word文档显示在winform窗体中

    word二次开发通过C#操作WORD文档

    Word二次开发通过C#操作WORD文档 在本文中,我们将探索如何使用C#语言来操作Word文档,并且开发一个Word插件。这个插件将是一个侧边栏,提供了博客列表、最近帖子列表、帖子草稿列表等功能。 首先,我们需要使用...

    C#采用OpenXml给word里面插入图片

    在C#编程中,使用OpenXml库来操作Microsoft Word文档是一种常见的需求,特别是涉及到文档内容的动态生成和编辑。OpenXml SDK(Software Development Kit)提供了一组强大的API,可以直接操作WordprocessingML(Word...

    C#向Word文档中插入条形码

    在C#中向Word文档插入条形码是一个常见的任务,特别是在自动化文档处理或者批量生成带条形码的报告时。为了实现这一功能,你需要利用Microsoft.Office.Interop.Word库,这是一个允许C#与Microsoft Word进行交互的COM...

    C#Word载入编辑程序控件类

    在.NET框架中,C#语言提供了丰富的库和控件来处理Microsoft Office应用程序,其中包括Word文档。"C# Word载入编辑程序控件类"是指利用C#编程语言和相关的类库,如Microsoft.Office.Interop.Word,来创建用户界面,...

    C# 操作word文档并保存

    本方法包括了生成word文档的方法以及在wrod文档中插入table表格

    Word文档浏览器(不需要安装office)含C#源码.

    【标题】"Word文档浏览器(不需要安装office)含C#源码"是一个创新的软件解决方案,它允许用户在没有安装Microsoft Office的情况下查看和浏览Word文档。这个应用的核心技术是使用了Aspose库,一个强大的第三方组件,专...

    C#操作word文档记录

    在本文中,我们将深入探讨如何使用C#编程语言来操作Microsoft Word文档。C#提供了与Office应用程序交互的能力,使得开发者可以创建、修改和管理Word文档,这在各种业务场景中都非常有用。 ### 一、创建程序 首先,...

    C#中word文档、图片以二进流存数据库和从数据库读出并打开

    在C#编程环境中,我们经常需要处理各种类型的文件,如Word文档和图片。这些文件的存储和检索在很多业务场景中都是必要的,例如备份、传输或在线预览。本篇文章将详细探讨如何在C#中将Word文档和图片以二进制流的形式...

    C#richTextBox显示和保存带格式的Word文档

    本文将深入探讨如何利用C#的`richtextbox`来显示、保存以及另存为带格式的Word文档。这涉及到Windows Forms应用程序开发中的文本处理技术,以及与Microsoft Word API(如Open XML SDK)的交互。 首先,显示带格式的...

    C#应用程序嵌入Word文档源码

    在本文中,我们将深入探讨如何使用C#编程语言在Windows Forms(WinForm)应用程序中嵌入和操作Microsoft Word文档。这个主题主要适用于那些希望通过C#与Word交互,创建、编辑或展示Word文档的开发者。我们将从标题和...

    C# word文档中的公式在access中的存取 完整小demo

    本示例主要探讨的是如何在C#中操作Word文档中的公式,并将其存取到Access数据库中。这是一个非常实用的技术点,对于构建题库系统或其他需要处理复杂文本内容的应用来说尤为重要。 首先,我们要了解C#中操作Word文档...

Global site tag (gtag.js) - Google Analytics