Поделиться через


Поддержка автоматизации пользовательского интерфейса для типа элемента управления "Редактирование"

Замечание

Эта документация предназначена для разработчиков .NET Framework, которые хотят использовать управляемые классы автоматизации пользовательского интерфейса, определенные в пространстве имен System.Windows.Automation. Последние сведения об автоматизации пользовательского интерфейса см. в разделе API автоматизации Windows: автоматизация пользовательского интерфейса.

В этом разделе содержатся сведения о поддержке автоматизации пользовательского интерфейса для типа элемента управления Edit. В службе автоматизации пользовательского интерфейса тип элемента управления — это набор условий, которые должны соответствовать элементу ControlTypeProperty управления для использования свойства. Условия включают конкретные рекомендации по структуре дерева автоматизации пользовательского интерфейса, значениям свойств автоматизации пользовательского интерфейса и шаблонам элементов управления.

Элементы управления редактированием позволяют пользователю просматривать и изменять простую строку текста без поддержки расширенного форматирования.

В следующих разделах определяется необходимая структура дерева автоматизации пользовательского интерфейса, свойства, шаблоны элементов управления и события для типа элемента управления Edit. Требования к автоматизации пользовательского интерфейса применяются ко всем элементам управления редактирования, будь то Windows Presentation Foundation (WPF), Win32 или Windows Forms.

Требуемая структура дерева автоматизации пользовательского интерфейса

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

Вид управления Просмотр содержимого
Изменить Изменить

Элементы управления, которые используют тип Edit, всегда будут иметь нулевые полосы прокрутки в представлении дерева автоматизации пользовательского интерфейса, так как это однострочный элемент управления. Одна строка текста может быть вложена в некоторые сценарии макета. Тип элемента управления "Изменить" лучше всего подходит для хранения небольших объемов редактируемого или выборного текста.

Обязательные свойства автоматизации пользовательского интерфейса

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

Свойство автоматизации пользовательского интерфейса Ценность Примечания.
AutomationIdProperty См. примечания. Значение этого свойства должно быть уникальным для всех элементов управления в приложении.
BoundingRectangleProperty См. примечания. Внешний прямоугольник, содержащий весь элемент управления.
ClickablePointProperty См. примечания. Элемент управления редактирования должен иметь нажмимную точку, которая обеспечивает фокус ввода для части правки элемента управления, когда пользователь щелкает мышь там.
IsKeyboardFocusableProperty См. примечания. Если элемент управления может получать фокус клавиатуры, он должен поддерживать это свойство.
NameProperty См. примечания. Имя элемента управления редактирования обычно создается из статической текстовой метки. Если нет статической текстовой метки, разработчик приложения должен назначить значение свойства для Name. Свойство Name никогда не должно содержать текстовое содержимое элемента управления редактирования.
LabeledByProperty См. примечания. Если с элементом управления связана статичная текстовая метка, то это свойство должно предоставить ссылку на этот элемент управления. Если текстовый элемент управления является подкомпонентом другого элемента управления, он не будет иметь LabeledBy набора свойств.
ControlTypeProperty Изменить Это значение является одинаковым для всех инфраструктур пользовательского интерфейса.
LocalizedControlTypeProperty "Изменить" Локализованная строка, соответствующая типу элемента управления Edit.
IsContentElementProperty Верно Элемент управления редактированием всегда включается в представление содержимого дерева автоматизации пользовательского интерфейса.
IsControlElementProperty Верно Элемент управления редактирования всегда включается в представление элемента управления дерева автоматизации пользовательского интерфейса.
IsPasswordProperty См. примечания. Необходимо задать значение true для элементов управления редактирования, содержащих пароли. Если элемент управления редактированием содержит содержимое пароля, это свойство можно использовать средством чтения с экрана, чтобы определить, следует ли считывать нажатия клавиш в качестве типа пользователей.

Обязательные шаблоны и свойства элементов управления автоматизации пользовательского интерфейса

В следующей таблице перечислены шаблоны элементов управления, которые должны поддерживаться всеми элементами управления редактирования. Дополнительные сведения о шаблонах управления см. в обзоре шаблонов управления автоматизации пользовательского интерфейса.

Шаблон элемента управления/Свойство шаблона элемента управления Поддержка/значение Примечания.
ITextProvider Зависит Элементы управления редактированием должны поддерживать шаблон элемента управления "Текст", так как подробные текстовые сведения всегда должны быть доступны для клиентов.
IValueProvider Зависит Все элементы управления редактирования, которые работают с строками, должны предоставлять паттерн "Значение".
IsReadOnly См. примечания. Это свойство должно быть задано, чтобы указать, может ли элемент управления иметь значение, заданное программным способом или редактируемым пользователем.
Value См. примечания. Это свойство возвращает текстовое содержимое элемента управления редактирования. Если IsPasswordProperty задано как true, это свойство должно поднимать InvalidOperationException при выполнении запроса.
IRangeValueProvider Зависит Все элементы управления редактирования, которые принимают числовые диапазоны, должны предоставлять шаблон элемента управления "Значение диапазона".
Minimum См. примечания. Это свойство должно быть наименьшим значением, которое можно установить для содержимого элемента управления 'редактирование'.
Maximum См. примечания. Это свойство должно быть наибольшим значением, которым может обладать содержимое элемента управления редактирования.
SmallChange См. примечания. Это свойство должно указывать количество десятичных разрядов, для которых можно задать значение. Если при редактировании принимаются только целые числа, SmallChangeProperty должно быть равно 1. Если изменение принимает диапазон от 1.0 до 2.0, SmallChangeProperty необходимо иметь значение 0.1. Если элемент управления редактирования принимает диапазон от 1.00 до 2.00, SmallChangeProperty то он должен иметь значение 0,001.
LargeChange Null Это свойство не требуется предоставлять в элементе управления редактированием.
Value См. примечания. Это свойство будет указывать числовое содержимое элемента управления редактирования. Если клиент службы автоматизации пользовательского интерфейса устанавливает более точное значение в пределах диапазонов, указанных в свойствах Minimum и Maximum, свойство Value автоматически округляется до ближайшего принятого значения.

Обязательные события автоматизации пользовательского интерфейса

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

событие модель автоматизации пользовательского интерфейса Поддержка Примечания.
InvalidatedEvent Обязательно Отсутствует
TextSelectionChangedEvent Обязательно Отсутствует
TextChangedEvent Обязательно Отсутствует
BoundingRectangleProperty событие изменения свойства. Обязательно Отсутствует
IsOffscreenProperty событие изменения свойства. Обязательно Отсутствует
IsEnabledProperty событие изменения свойства. Обязательно Отсутствует
NameProperty событие изменения свойства. Обязательно Отсутствует
ValueProperty событие изменения свойства. Зависит Отсутствует
HorizontallyScrollableProperty событие изменения свойства. Никогда Отсутствует
HorizontalScrollPercentProperty событие изменения свойства. Никогда Отсутствует
HorizontalViewSizeProperty событие изменения свойства. Никогда Отсутствует
VerticalScrollPercentProperty событие изменения свойства. Никогда Отсутствует
VerticallyScrollableProperty событие изменения свойства. Никогда Отсутствует
VerticalViewSizeProperty событие изменения свойства. Никогда Отсутствует
ValueProperty событие изменения свойства. Зависит Если элемент управления поддерживает шаблон управления диапазоном значений, он должен поддерживать это событие.
AutomationFocusChangedEvent Обязательно Отсутствует
StructureChangedEvent Обязательно Отсутствует

См. также