IRawElementProviderSimple::GetPatternProvider Method
Retrieves a pointer to an object that provides support for a control pattern on a Microsoft UI Automation element.
Syntax
HRESULT GetPatternProvider( PATTERNID patternId, IUnknown **pRetVal );
Parameters
- patternId
[in] The identifier of the control pattern. For a list of control pattern IDs, see Control Pattern Identifiers.- pRetVal
[out, retval] The address of a variable that receives a pointer to the IUnknown interface of the object that supports the pattern, or NULL if the pattern is not supported. This parameter is passed uninitialized.
Return Value
Returns S_OK if successful, or an error value otherwise.
Example
The following example shows how to return a control pattern provider. In this case, the provider is implemented by the class that implements IRawElementProviderSimple::GetPatternProvider. The UiaIds structure was previously populated by using UiaLookupId.
HRESULT STDMETHODCALLTYPE Provider::GetPatternProvider(PATTERNID patternId, IUnknown** pRetVal) { if (patternId == UiaIds.InvokePattern) { AddRef(); *pRetVal =(IUnknown *)(IRawElementProviderSimple*)this; } else { *pRetVal = NULL; } return S_OK; }
See Also