Метод IUIAutomationItemContainerPattern::FindItemByProperty (uiautomationclient.h)
Извлекает элемент внутри содержащего элемента на основе указанного значения свойства.
Синтаксис
HRESULT FindItemByProperty(
[in] IUIAutomationElement *pStartAfter,
[in] PROPERTYID propertyId,
[in] VARIANT value,
[out, retval] IUIAutomationElement **pFound
);
Параметры
[in] pStartAfter
Тип: IUIAutomationElement*
Указатель на элемент, после которого начинается поиск, или NULL для поиска всех элементов.
[in] propertyId
Тип: PROPERTYID
Идентификатор свойства. Список идентификаторов свойств см. в разделе Идентификаторы свойств.
[in] value
Тип: VARIANT
Значение свойства.
[out, retval] pFound
Тип: IUIAutomationElement**
Получает указатель на соответствующий элемент.
Возвращаемое значение
Тип: HRESULT
Если этот метод завершается успешно, он возвращает S_OK. В противном случае возвращается код ошибки HRESULT .
Комментарии
Поставщик может вернуть фактический интерфейс IUIAutomationElement или заполнитель, если соответствующий элемент виртуализирован.
Этот метод возвращает E_INVALIDARG, если запрошенное свойство не поддерживает поиск в контейнере. Ожидается, что большинство контейнеров будут поддерживать свойство Name и, если это применимо для контейнера, AutomationId и IsSelected.
Этот метод может быть медленным, так как ему может потребоваться пройти через несколько объектов, чтобы найти соответствующий. При использовании в цикле для возврата нескольких элементов определенный порядок не определен, если каждый элемент возвращается только один раз (то есть цикл должен завершиться). Этот метод также ориентирован на элементы, а не на пользовательский интерфейс, поэтому элементы с несколькими представлениями пользовательского интерфейса необходимо использовать только один раз.
Если параметр propertyId указан как 0 (ноль), поставщик должен вернуть следующий элемент после pStartAfter. Если параметр pStartAfter указан как NULL с свойством PropertyId 0, поставщик должен вернуть первый элемент в контейнере. Если аргумент propertyId имеет значение 0, параметр value должен быть VT_EMPTY.
Требования
Требование | Значение |
---|---|
Минимальная версия клиента | Windows 7, Windows Vista с пакетом обновления 2 (SP2) и Обновление платформы для Windows Vista, Windows XP с пакетом обновления 3 (SP3) и Обновление платформы для Windows Vista [только классические приложения] |
Минимальная версия сервера | Windows Server 2008 R2, Windows Server 2008 с пакетом обновления 2 (SP2) и обновление платформы для Windows Server 2008, Windows Server 2003 с пакетом обновления 2 (SP2) и Обновление платформы для Windows Server 2008 [только классические приложения] |
Целевая платформа | Windows |
Header | uiautomationclient.h (включая UIAutomation.h) |
См. также раздел
IUIAutomationItemContainerPattern
Справочные материалы