精华内容
下载资源
问答
  • C# 给Word文档添加内容控件

    千次阅读 2016-06-13 17:08:06
    在MSWord中,我们可以通过内容控件来向word文档中插入预先定义好的模块,指定模块的内容格式(如图片、日期、列表或格式化的文本等),从而创建一个结构化的word文档。下面就来看看如何使用Spire.Doc及C#给word文档...

    在MSWord中,我们可以通过内容控件来向word文档中插入预先定义好的模块,指定模块的内容格式(如图片、日期、列表或格式化的文本等),从而创建一个结构化的word文档。下面就来看看如何使用C#给word文档添加组合框、文本、图片、日期选取器及下拉列表等内容控件(这里我借助了一个word组件Spire.Doc)。

    添加组合框内容控件

    组合框用于显示用户可以选择的项目列表。和下拉列表不同的是组合框允许用户编辑或添加项。

    //给段落添加一个内容控件并指定它的SDTtype为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);



    添加文本内容控件

    纯文本控件包含文本,但不能包含其他项,例如表格、图片或其他内容控件。此外,纯文本控件中的所有文本都具有相同的格式。

    添加文本内容控件的步骤和添加组合框内容控件类似,核心代码如下:

    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);


     

    添加日期选取器内容控件

    日期选取器提供用于选择日期的日历UI。最终用户单击控件中的下拉箭头时,就会显示日历。

    核心代码:

    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(newSdtListItem("Harry"));
    sddl.ListItems.Add(newSdtListItem("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 = newDocument();
               Section section = document.AddSection();
               Paragraph paragraph = section.AddParagraph();
     
               //添加组合框内容控件
               StructureDocumentTagInline sd = new StructureDocumentTagInline(document);
               paragraph.ChildObjects.Add(sd);
               sd.SDTProperties.SDTType = SdtType.ComboBox;
               SdtComboBox cb = newSdtComboBox();
               cb.ListItems.Add(new SdtListItem("Cat"));
               cb.ListItems.Add(new SdtListItem("Dog"));
               sd.SDTProperties.ControlProperties = cb;
               TextRange rt = newTextRange(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 = newSdtText(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 = newDocPicture(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 = newSdtDate();
               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 = newSdtDropDownList();
               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);
               
            }
        }
    }
     


     

    展开全文
  • C#控件提示内容

    千次阅读 2018-06-26 09:58:24
    在大部分控件中都有一个属性:ToolTip(获取或设置常规工具提示的内容。) 比如,SimpleButton,设置了ToolTip属性以后,当程序运行时,鼠标移动到按钮上就会显示出提示内容。   这是关于自带ToolTip属性的控件...

    在系统开发过程中,某些控件需要实现这样一种功能:当鼠标移动到控件上时,在鼠标位置显示一些文字提示。

    比如:

     

    在大部分控件中都有一个属性:ToolTip(获取或设置常规工具提示的内容。)

    比如,SimpleButton,设置了ToolTip属性以后,当程序运行时,鼠标移动到按钮上就会显示出提示内容。

     

    这是关于自带ToolTip属性的控件显示提示信息的用法,当然也有某些组件是没有这个属性的。对于这种组件要想实现鼠标移动到组件上时,在鼠标位置下显示提示信息,在网上有很多方法,这里我觉得有一种方法比较简单,借助一个ToolTipControl控件就能够实现。

     

    这里,我用一个ToolTipControl和PanelControl举例

    PanelControl控件本身是没有ToolTip属性的,当给窗体拖放一个ToolTipControl控件以后,PanelControl控件的属性就可以找到ToolTip属性了。

    通过添加ToolTipControl控件就能够使那些内有ToolTip属性的控件使用ToolTip提示内容了。

    展开全文
  • OpenXML SDK 读取WORD文档中的内容控件

    千次阅读 2017-03-22 15:28:55
    OpenXML SDK 读取WORD文档中的内容控件

    OpenXML SDK 是不是已经开源了?原先实在微软的网站上下载最新版是2.5

    BING查询他的网址https://github.com/OfficeDev/Open-Xml-Sdk

    最新版是2.7.1,由于他采用了最新的.net core使用vs2015打不开,因此忽略他的最新版。

    使用2.6版,在NuGet上发现有2.6.1版,但是在他的网站上没看到,只有2.7.1 2.7 2.6 2.5.1 2.5。

    using System;
    using System.Collections.Generic;
    using System.Linq;
    using DocumentFormat.OpenXml;
    using DocumentFormat.OpenXml.Packaging;
    using DocumentFormat.OpenXml.Wordprocessing;
    using DocumentFormat.OpenXml.Office2010.Word;


    namespace TestPaper
    {
        sealed class DocxPaper : IPaper
        {
            public bool Checking(string sFileName)
            {
                string tempstr;


                using (WordprocessingDocument doc = WordprocessingDocument.Open(sFileName, false))
                {
                    MainDocumentPart mpart = doc.MainDocumentPart;


                    foreach(SdtContentCheckBox chk in mpart.Document.Descendants<SdtContentCheckBox>().ToList())
                    {
                        var tagProperty = chk.Parent.Descendants<Tag>().FirstOrDefault(); //这是CheckBox内容控件的标记,VBA中的tag属性


                        if(tagProperty != null)
                        {
                            tempstr = tagProperty.Val;
                        }


                        tempstr = chk.Checked.Val;


                        if(chk.Checked.Val == OnOffValues.True) //此时checkbox选中状态
                        {
                            tempstr = "1"; //这是测试代码无用,为了断点能调试
                        }
                    }
                }


                return true;
            }
        }
    }

    忽略接口IPaper,这是项目中使用的。只定义了方法!

    这应该是比较快的了,除非使用C++了。我以前的文章有C++访问xlsx!

    展开全文
  • plainTextEdit控件获得文本内容方法、设置文本内容方法。 plainTextEdit获得、设置文本内容的方法和一般的控件不同。

    plainTextEdit获得、设置文本内容的方法和一般的控件不同。
    获得文本内容

    # 一般控件获得方式
    self.lineEdit.text()
    
    # plainTextEdit获得方式
    self.plainTextEdit_5.toPlainText()
    

    设置文本内容

    # 一般控件设置方法
    self.lineEdit.setText("...")
    
    # plainTextEdit设置方式
    self.plainTextEdit_5.setPlainText("...")
    self.plainTextEdit_5.appendPlainText("...")   # 在原本内容基础上增加内容
    

    喜欢的点个赞❤吧!

    展开全文
  • WPF经典教程之WPF控件内容模型

    千次下载 热门讨论 2014-10-05 00:54:29
    WPF控件内容模型主要指派生于System.Windows.Controls.Control类的各种控件,其主要分为四部分: • ContentControl • HeaderedContendControl • ItemsControl • HeaderedItemsControl 其继承关系请参考我上...
  • autoit 获取控件内容

    2018-02-03 08:21:14
    autoit 获取控件内容。(已获取到内容到一个txt中)现需要从下面1.txt提取字符串 需获取: **Intel Management Engine Driver** 1.txt TITLE: Intel Management Engine Driver VERSION: 11.7.0.1045 ...
  • Table控件内容居中

    千次阅读 2016-04-16 13:24:26
    Table控件居中整个Table控件居中
  • WPF控件内容自动缩放及放大镜

    千次阅读 2014-08-15 09:14:10
    当ShowsPreview设置为True时,拖拽过程中不会刷新(控件内容要等到鼠标释放时才变化);当ShowsPreview设置为False时,控件内容实时跟随变化。 2、使用ViewBox特性实现控件内容随拖拽自动变化。 3、布局代码:
  • 在用报表工具设计报表时,常遇到以下问题,1、参数控件(多行控件)的居中问题。2、报表内容的居中和自适应宽度问题,以及报表标题设置了重复标题和冻结如何不影响居中。3、图表居中和自适应宽度问题。
  • 自定义控件不显示内容由于工作需要在写WPF,其中想要实现一些自己的控件所以直接自定义了控件博主是继承了ContenControl的控件开始写的但是发现不管设置Content属性为任何都是不显示。 解决方案: 在创建自定义控件...
  • CEdit控件清空内容

    千次阅读 2015-12-30 11:57:33
    m_editRecv.SetSel(0, -1);  //m_editRecv.Clear(); // 只读无法清空  m_editRecv.ReplaceSel(_T(""));
  • 效果示意: 操作步骤: 1、新建winform项目及创建窗体 2、拖取 打印 相关控件 ...3、设置上述控件的Document属性为相应的PrintDocument 4、设置按钮等控件 及 添加相应按钮事件 5、示意代码
  • 获取内容TCHAR UserName[1024]; HWND h = GetDlgItem(m_hWin,IDC_EDIT2);//获取控件句柄 int len = GetWindowTextLength(h);//获取控件用户输入长度memset(UserName,0,1024); GetDlgItemText(m_hWin,IDC_EDIT2,...
  • MFC遍历/清空所有Edit控件内容

    千次阅读 2016-06-18 15:36:20
    MFC遍历/清空所有Edit或某一类控件内容
  • 内容页响应母版页控件的事件

    千次阅读 2007-08-08 14:52:00
    内容页响应母版页控件的事件左直拳 在内容页里面,如果想响应位于母版页的控件的事件,该怎么办呢?MSDN开宗明义地告诉我们:对于控件而言,事件是在本地处理的,即内容页中的控件内容页中引发事件,母版页中的...
  • WPF从我炫系列3---内容控件的用法

    万次阅读 2010-06-25 17:43:00
    今天我来给大家讲解WPF中内容控件的用法,在WPF中的内容控件,通俗的讲,是指具有Content属性的控件,在content属性里面可以嵌套放置任意其他类型的控件,但是Content只能接受单个元素,可以通过布局控件来组合放置...
  • 在这里假设为label随着linedit内容变化 之前要先定义PI; void Dialog::on_LineEdit_textChanged(const QString &arg1) { bool ok; QString tempStr; QString valueStr=ui->LineEdit->text(); ...
  • FlowLayoutPanel控件

    万次阅读 2015-09-09 15:22:03
    FlowLayoutPanel控件沿着水平或垂直流方向排列其内容。其内容可以从一行换到下一行。或者,还可以对它的内容进行剪裁,而不是进行换行。 可以通过设置FlowDirection 属性的值来指定流向。在从右向左(RTL)的布局中...
  • 我用winform中添加wpf自定义控件,报错usercontrol不支持直接内容,新建wpf程序,报window不支持直接内容。。这是什么原因?
  • 输入内容后input控件的位置改变

    千次阅读 2017-09-29 12:25:51
    写了挺久的前端代码,不知道为什么之前没有遇到这个问题。既然遇到了,那么就在这里总结一下经验,遇到这个问题,是我在做一个搜索框的时候。并且最奇怪的是我输入英文和数字,控件位置不改变,但是只要输入汉字,...
  • android的EditText控件,内容右对齐

    千次阅读 2019-01-16 11:15:25
    android的EditText控件,内容右对齐 EditText光标在右边,输入内容从右往左: android:gravity="center_vertical|right" 或者 editText.setGravity(Gravity.RIGHT);
  • 1、要求将label1控件的text文本内容,手动拖动到任意一个Panel控件中居中显示label1控件text文本内容。 2、并且要求将拖动到Panel控件中的text文本内容再复制一份到label1控件中,且将text文本内容颜色设置成灰色显示...
  • C# winform控件 显示html内容

    万次阅读 2016-09-12 10:25:41
    添加WebBrowser控件,然后给DocumentText赋html值就o了 private void Form1_Load(object sender, EventArgs e) { webBrowserBody.DocumentText = "大家晚上好,123123标准化术语"; }
  • 本文主要总结删除QWidget中的控件和清空QTableView表格内容用法,下面将详细讲述这两种用法的实现方式。1.1删除QWidget中的控件(函数removeWidget())要删除QWidget中的控件,可以现在QWidget用QVBoxLayout布局,...
  • android:paddingLeft指该控件内部内容,如文本距离该控件的边距。   如: 当按钮分别设置以上两个属性时,得到的效果是不一样的。 android:paddingLeft="30px": 按钮上设置的内容(例如图片)离...
  • 控件分类

    千次阅读 2018-06-01 14:51:13
    控件是指对数据和方法的封装。控件可以有自己的属性和方法,其中属性是控件数据的简单访问者,方法则是控件的一些简单而可见的...控件根据用途上可以分为四种:内容控件(Content Controls)、条目控件(Items Co...
  • duilib CListUI控件插入内容注意地方

    千次阅读 2015-04-26 11:15:47
    article from lixiangxiang@ajb  公司最近项目由于MFC界面出现无法解决的bug(部分edit自绘...插入数据的时候给的Demon是一种高效办法是将数据显示如逻辑分开,以回调形式加入数据内容到list控件中,但是我觉得这种方
  • 在开发Winform程序中的WebBrowser控件时想要实现页面内容放大、缩小功能,由于IE版本问题,WebBrowser中没有Ctrl+滚轮实现放大、缩小页面内容的功能,只能自己实现了。 实现具体代码如下: 1。在引用中引用COM组件...
  • js获取控件名称、及内容

    千次阅读 2014-11-28 08:37:45
    js获取asp.net服务器控件的值 在做 BS架构的项目时,经常遇到 需要用js 来调用 asp.net 服务器端控件的值。 大多数的 控件他的值都可以通过js调用它的 value属性来获得此控件的值,但是也有例外的情况:如 Label...
  • android EditText控件如何禁止输入内容

    万次阅读 多人点赞 2012-09-18 18:15:35
    android EditText控件如何禁止往里面输入内容? 修改版解决方法: EditText editText = (EditText) findViewById(R.id.editText1); editText.setKeyListener(null); 看到这个问题大家可能有点奇怪...

空空如也

空空如也

1 2 3 4 5 ... 20
收藏数 509,398
精华内容 203,759
关键字:

内容控件什么意思