ExpressionEditorSheet Класс

Определение

Представляет таблицу редактора времени разработки для настраиваемого выражения. Этот класс должен наследоваться.

public ref class ExpressionEditorSheet abstract
public abstract class ExpressionEditorSheet
type ExpressionEditorSheet = class
Public MustInherit Class ExpressionEditorSheet
Наследование
ExpressionEditorSheet
Производный

Комментарии

Страница редактора пользовательских выражений позволяет разработчику задавать свойства пользовательского выражения во время разработки. Значения свойств элемента управления можно задать с помощью строк выражений; Строки выражения вычисляются во время выполнения построителем выражений и редактором выражений во время разработки.

При просмотре Expressions свойства элемента управления в сетке свойств времени разработки визуальный конструктор отображает диалоговое окно для задания выражений, предоставляющих значение для свойства элемента управления. Тип выражения можно выбрать на основе списка префиксов выражений. При выборе префикса выражения из списка визуальный конструктор использует связанные ExpressionEditor объекты и для ExpressionEditorSheet вычисления и преобразования строки выражения на основе синтаксиса для этого типа выражения. Визуальный конструктор использует свойства листа редактора выражений для запроса одной или нескольких строк, которые объединяются в строку пользовательского выражения.

Как правило, чтобы предоставить новый тип выражения во время разработки, необходимо определить уникальный префикс выражения и предоставить пользовательские ExpressionBuilder реализации и ExpressionEditor . При необходимости можно предоставить пользовательскую ExpressionEditorSheet реализацию, которая определяет свойства, используемые для формирования выражения. Чтобы связать префикс выражения с построителем выражений и редактором выраженийExpressionPrefixAttribute, примените ExpressionEditorAttribute атрибут и атрибут к пользовательскому ExpressionBuilder классу, а затем настройте префикс выражения для построителя выражений в expressionBuilders элементе в файле веб-конфигурации.

Реализация GetExpressionEditorSheet метода по умолчанию возвращает базовый лист редактора, который использует одну входную строку для формирования выражения. Редакторы пользовательских выражений ExpressionEditor , производные от , могут переопределить GetExpressionEditorSheet метод для возврата реализации настраиваемого листа редактора. Как правило, настраиваемый лист редактора содержит несколько свойств, которые используются для построения строки выражения. Метод GetExpression возвращает результирующая строка выражения на основе текущих свойств выражения.

Например, ResourceExpressionEditor класс является производным от ExpressionEditor класса и предоставляет реализацию для оценки и связывания ссылки на строку ресурса со свойством элемента управления во время разработки. Класс ResourceExpressionBuilder связан с префиксом Resources выражения и реализацией ResourceExpressionEditor . Метод GetExpressionEditorSheet возвращает ResourceExpressionEditorSheet, который определяет отдельные свойства, образующие выражение ссылки на ресурс.

При наследовании ExpressionEditorSheet от класса необходимо переопределить следующие элементы:

  • Метод GetExpressionEditorSheet , возвращающий реализацию настраиваемого листа редактора.

  • Конструктор ExpressionEditorSheet для реализации пользовательских действий инициализации для реализации листа редактора выражений.

Примечания для тех, кто реализует этот метод

Создайте таблицу редактора пользовательских выражений ExpressionEditorSheet из класса , если вы определяете новый тип выражения для значений свойств элемента управления и хотите создать строку выражения на основе нескольких значений свойств выражения. Реализация производного класса должна содержать следующее:

  • Открытое свойство для каждого отдельного значения в строке выражения, которое можно задать во время разработки.

  • Реализация метода , формирующее GetExpression() строку настраиваемого выражения из значений свойств листа редактора.

  • При необходимости — реализация конструктора, которая задает начальные значения свойств листа редактора.

Связанный класс редактора пользовательских выражений создает экземпляр производного листа редактора в GetExpressionEditorSheet(String, IServiceProvider) методе , инициализирует этот экземпляр текущим набором строки выражения для свойства элемента управления и возвращает экземпляр в визуальный конструктор. Визуальный конструктор позволяет задать свойства листа выражений, а затем вызывает GetExpression() метод для формирования строки выражения из значений свойств входного листа выражений.

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

ExpressionEditorSheet(IServiceProvider)

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

Свойства

IsValid

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

ServiceProvider

Получает реализацию поставщика служб, используемую таблицей редактора выражений.

Методы

Equals(Object)

Определяет, равен ли указанный объект текущему объекту.

(Унаследовано от Object)
GetExpression()

При переопределении в производном классе возвращает строку выражения, сформированную значениями свойств таблицы редактора выражений.

GetHashCode()

Служит хэш-функцией по умолчанию.

(Унаследовано от Object)
GetType()

Возвращает объект Type для текущего экземпляра.

(Унаследовано от Object)
MemberwiseClone()

Создает неполную копию текущего объекта Object.

(Унаследовано от Object)
ToString()

Возвращает строку, представляющую текущий объект.

(Унаследовано от Object)

Применяется к

См. также раздел