ExportForm — класс

Класс ExportForm представляет форму экспорта и печати содержимого карточки, позволяет отправлять содержимое по электронной почте.

Синтаксис

public class ExportForm : DevExpress.XtraEditors.XtraForm

Конструкторы

Имя Описание

Public ExportForm()

Инициализирует новый экземпляр класса ExportForm.

Свойства

Имя Описание

Caption

Задаёт или возвращает тему письма, отправляемого из формы ExportForm.

CardData

Задаёт или возвращает содержимое карточки, для которой вызывается диалог экспорта и печати.

CardHost

Задаёт или возвращает контейнер карточки.

CardTypeId

Задаёт или возвращает идентификатор типа карточки. Данный параметр используется при формировании списка доступных преобразований печати и экспорта.

CardXml

Задаёт или возвращает содержимое произвольного XML-документа, предназначенного для вывода в диалог печати и экспорта. Используется вместо XML-документа, полученного из CardData.

Session

Задаёт или возвращает пользовательскую сессию.

TemplateAlias

Задаёт или возвращает псевдоним преобразования, которое будет выбрано по умолчанию.

Заметки

Класс ExportForm предоставляет два варианта использования:

  1. Используется CardData — диалог вызывается для существующей карточки. Параметры CardXml, CardTypeId, Caption указывать не требуется.

  2. Используется CardXml — диалог вызывается для печати переданной Xml-строки. Параметр CardData указывать не требуется. Данный параметр доступен начиная с версии платформы 5.4.

При печати собственного XML-документа список доступных пребразований печати и экспорта будет ограничен преобразованиями имеющими тип Custom (см. раздел Раздел 'Transformations').

Не рекомендуется задавать значения CardData и CardXml одновременно, так как при этом возможно формирование некорректного списка преобразований.

Примеры

Ниже приведён пример скрипта, вызываемого из карточки, который открывает окно экспорта и печати

private void ExportButton_Click(System.Object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
 using (ExportForm exportForm = new ExportForm())
 {
  exportForm.Session = base.Session;
  exportForm.CardHost = base.CardFrame.CardHost;
  exportForm.CardData = base.CardData; (1)

  exportForm.ShowDialog(); (2)
 }
}
1 Сессия, контейнер карточки и её данные получаем из базового класса ScriptClassBase.
2 Вывод окна печати.

Далее приведён пример использования класса ExportForm при выводе на печать/экспорт собственного XML-документа

private void ExportButton_Click(System.Object sender, DevExpress.XtraBars.ItemClickEventArgs e)
{
 using (ExportForm exportForm = new ExportForm())
 {

  exportForm.Session = base.Session;
  exportForm.CardHost = base.CardFrame.CardHost; (1)

  exportForm.CardXml = System.IO.File.ReadAllText("CardXMLDocument.xml"); (2)

  exportForm.CardTypeId = new Guid("B9F7BFD7-7429-455E-A3F1-94FFB569C794"); (3)

  exportForm.Caption = "Произвольный XML-документ"; (4)

  exportForm.TemplateAlias = "CustomTransformation"; (5)

  exportForm.ShowDialog(); (6)
 }
}
1 Сессия и контейнер карточки получаем из базового класса ScriptClassBase.
2 В данном случае XML-документ получен из файла CardXMLDocument.xml, также он может быть сформирован, например, при помощи XmlDocument.
3 Идентификатор типа карточки, который используется при получении разрешённых преобразований (Transformation).
4 Будет использован при создании электронного письма.
5 Если в списке доступных преобразований присутствует преобразование с псевдонимом CustomTransformation, то оно будет выбрано по умолчанию.
6 Вывод окна печати.