Back to Devexpress

ContentControlDate Interface

officefileapi-devexpress-dot-xtrarichedit-dot-api-dot-native-de80d5cd.md

latest7.6 KB
Original Source

ContentControlDate Interface

Date picker content control.

Namespace : DevExpress.XtraRichEdit.API.Native

Assembly : DevExpress.RichEdit.v25.2.Core.dll

NuGet Package : DevExpress.RichEdit.Core

Declaration

csharp
public interface ContentControlDate :
    ContentControlBase
vb
Public Interface ContentControlDate
    Inherits ContentControlBase

The following members return ContentControlDate objects:

Remarks

Create a Date Picker Content Control

The code sample below creates a date picker control:

csharp
using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.API.Native;

using (var wordProcessor = new RichEditDocumentServer()){

    wordProcessor.CreateNewDocument();
    Document document = wordProcessor.Document;
    var contentControls = document.ContentControls;

    var datePicker = contentControls.InsertDatePickerControl(document.Range.Start);
    datePicker.Date = DateTime.Now;
    datePicker.DateFormat = "dddd, MMMM dd, yyyy";
    datePicker.Color = System.Drawing.Color.RebeccaPurple;
    wordProcessor.SaveDocument("Content Controls Date Picker.docx", DocumentFormat.Docx);

    Process.Start(new ProcessStartInfo("Content Controls Date Picker.docx") { UseShellExecute = true });
}
vb
Imports DevExpress.XtraRichEdit
Imports DevExpress.XtraRichEdit.API.Native

Using wordProcessor = New RichEditDocumentServer()

  wordProcessor.CreateNewDocument()
  Dim document As Document = wordProcessor.Document
  Dim contentControls = document.ContentControls

  Dim datePicker = contentControls.InsertDatePickerControl(document.Range.Start)
  datePicker.Date = Date.Now
  datePicker.DateFormat = "dddd, MMMM dd, yyyy"
  datePicker.Color = System.Drawing.Color.RebeccaPurple
  wordProcessor.SaveDocument("Content Controls Date Picker.docx", DocumentFormat.Docx)

  Process.Start(New ProcessStartInfo("Content Controls Date Picker.docx") With {.UseShellExecute = True})
End Using

Access Date Picker Content Controls

The SubDocument.ContentControls property returns all content controls in a document. Use the ContentControlBase.ControlType property to determine the content control type.

The code sample below retrieves all date pickers in a document:

csharp
using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.API.Native;

using (var wordProcessor = new RichEditDocumentServer()) {

    Document document = wordProcessor.Document;
    var contentControls = document.ContentControls;

    var datePickers = document.ContentControls.Where(contentControl => contentControl.ControlType == ContentControlType.Date).Cast<ContentControlDate>();

    foreach ( ContentControlDate datePicker in datePickers )
    {
        // your code here
    }
vb
Imports DevExpress.XtraRichEdit
Imports DevExpress.XtraRichEdit.API.Native

Using wordProcessor = New RichEditDocumentServer()

  Dim document As Document = wordProcessor.Document
  Dim contentControls = document.ContentControls

  Dim datePickers = document.ContentControls.Where(Function(contentControl) contentControl.ControlType = ContentControlType.Date).Cast(Of ContentControlDate)()

  For Each datePicker In datePickers
    ' your code here
  Next datePicker

Modify Check Box Content Controls

Use the ContentControlDate class properties to change the date picker parameters. The code sample below retrieves the date picker from the first paragraph and changes its date format:

csharp
using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.API.Native;

using (var wordProcessor = new RichEditDocumentServer()) {

  wordProcessor.LoadDocument("Content Controls.docx");
  Document document = wordProcessor.Document;
  var contentControls = document.ContentControls;
  var firstParagraph = document.Paragraphs[0];
  for (var i = 0; i < contentControls.Count; i++) {
      if (firstParagraph.Range.Contains(contentControls[i].Range.Start) && contentControls[i].ControlType == ContentControlType.Date) {
          ContentControlDate datePicker = (ContentControlDate)contentControls[i];

          datePicker.DateFormat = "d MMMM yyyy";
          break;
      }
      wordProcessor.SaveDocument("Content Controls.docx", DocumentFormat.Docx);
  }
}
vb
Imports DevExpress.XtraRichEdit
Imports DevExpress.XtraRichEdit.API.Native

Using wordProcessor = New RichEditDocumentServer()

  wordProcessor.LoadDocument("Content Controls.docx")
  Dim document As Document = wordProcessor.Document
  Dim contentControls = document.ContentControls
  Dim firstParagraph = document.Paragraphs(0)
  For i = 0 To contentControls.Count - 1
    If firstParagraph.Range.Contains(contentControls(i).Range.Start) AndAlso contentControls(i).ControlType = ContentControlType.Date Then
      Dim datePicker As ContentControlDate = CType(contentControls(i), ContentControlDate)

      datePicker.DateFormat = "d MMMM yyyy"
      break
    End If
    wordProcessor.SaveDocument("Content Controls.docx", DocumentFormat.Docx)
  Next i
End Using

Remove Check Box Content Controls

The ContentControlCollection.Remove method allows you to remove specific content control. You can also specify whether to keep control’s contents when the controls is removed.

The code sample below removes all date pickers from the document:

csharp
using DevExpress.XtraRichEdit;
using DevExpress.XtraRichEdit.API.Native;

using (var wordProcessor = new RichEditDocumentServer()) {
    Document document = wordProcessor.Document;
    var contentControls = document.ContentControls;

    for (var i = 0; i < contentControls.Count; i++)
    {
        if (contentControls[i].ControlType == ContentControlType.Date)
        {
            contentControls.Remove(contentControls[i], true);
        }
    }
}
vb
Imports DevExpress.XtraRichEdit
Imports DevExpress.XtraRichEdit.API.Native

Using wordProcessor = New RichEditDocumentServer()
  Dim document As Document = wordProcessor.Document
  Dim contentControls = document.ContentControls

  Dim i = 0
  Do While i < contentControls.Count
    If contentControls(i).ControlType = ContentControlType.Date Then
      contentControls.Remove(contentControls(i), True)
    End If
    i += 1
  Loop
End Using

See Also

ContentControlDate Members

DevExpress.XtraRichEdit.API.Native Namespace