Форма BaseDocumentEditForm (из пространства имен Ultima.Client.Documents) наследуется от BaseEditForm и является общим предком для всех форм редактирования документов:

DevBookmark_Scripts CommonForm

tree DevBookmark_Scripts BaseEditForm

tree DevBookmark_Scripts BaseDocumentEditForm

В форме реализована поддержка команд над документом и список ссылок документа на другие документы. Также форма содержит панель инструментов с перечисленным и унаследованным от BaseEditForm функционалом:

Control_BaseDocumentEditForm

Для реализации собственной формы редактирования документа необходимо унаследовать ее от формы BaseDocumentEditForm и реализовать интерфейс IRecordEditor<Т>, где Т – тип документа. Система для редактирования документа будет искать форму, реализующую интерфейс IRecordEditor<T>. Если в системе не окажется ни одной такой формы, откроется базовая форма редактирования документа. Если в системе окажется более одной такой формы, то система выдаст ошибку. Это позволяет избежать неочевидного поведения системы при ошибке настройки системы администратором. Процесс создания собственной формы редактирования документа подробно описан в главе Формы редактирования документов.

Элемент управления обладает следующими специфичными свойствами (унаследованные от BaseEditForm свойства описаны в соответствующем разделе):

CommandsMenuVisible – в значении true отображается кнопка списка команд над документом (1);

QuickCommandsVisibles – в значении true отображается панель быстрого доступа к командам в нижней части формы (2).

DevBookmark_Scripts В классе формы BaseDocumentEditForm импортирован менеджер DocumentManager.

При наследовании от формы BaseDocumentEditForm прикладному разработчику могут оказаться полезны следующие методы и свойства ее класса:

DocumentType, типа type – возвращает тип документа, редактируемого текущей формой;

Document, типа IDocument – возвращает редактируемый в форме документ – объект DataRecord, приведенный к типу IDocument.