Форма BaseDocumentEditForm (из пространства имен Ultima.Client.Documents) наследуется от BaseEditForm и является общим предком для всех форм редактирования документов:
CommonForm
BaseEditForm
BaseDocumentEditForm
В форме реализована поддержка команд над документом и список ссылок документа на другие документы. Также форма содержит панель инструментов с перечисленным и унаследованным от BaseEditForm функционалом:
Для реализации собственной формы редактирования документа необходимо унаследовать ее от формы BaseDocumentEditForm и реализовать интерфейс IRecordEditor<Т>, где Т – тип документа. Система для редактирования документа будет искать форму, реализующую интерфейс IRecordEditor<T>. Если в системе не окажется ни одной такой формы, откроется базовая форма редактирования документа. Если в системе окажется более одной такой формы, то система выдаст ошибку. Это позволяет избежать неочевидного поведения системы при ошибке настройки системы администратором. Процесс создания собственной формы редактирования документа подробно описан в главе Формы редактирования документов.
Элемент управления обладает следующими специфичными свойствами (унаследованные от BaseEditForm свойства описаны в соответствующем разделе):
•CommandsMenuVisible – в значении true отображается кнопка списка команд над документом (1);
•QuickCommandsVisibles – в значении true отображается панель быстрого доступа к командам в нижней части формы (2).
В классе формы BaseDocumentEditForm импортирован менеджер DocumentManager.
При наследовании от формы BaseDocumentEditForm прикладному разработчику могут оказаться полезны следующие методы и свойства ее класса:
•DocumentType, типа type – возвращает тип документа, редактируемого текущей формой;
•Document, типа IDocument – возвращает редактируемый в форме документ – объект DataRecord, приведенный к типу IDocument.