如何在消費者介面自動化片段提供者中啟用導覽
本主題包含範例程式碼,示範如何在片段中的元素啟用 Microsoft 消費者介面自動化 提供者中的導覽。
下列範例程式碼會實作自訂清單控制項中清單專案的 IRawElementProviderFragment::Navigate 方法。 父元素是自訂清單控制項,而同層級專案則是清單中的其他專案。 如果指定的方向沒有元素,此方法會將 pRetVal 參數設定為 Null 。
// Implementation of IRawElementProviderFragment::Navigate.
// Enables UI Automation to locate the element in the tree.
HRESULT STDMETHODCALLTYPE ListItemProvider::Navigate(NavigateDirection direction, IRawElementProviderFragment ** pRetVal)
{
if (pRetVal == NULL)
{
return E_INVALIDARG;
}
IRawElementProviderFragment* pFrag = NULL;
switch(direction)
{
case NavigateDirection_Parent:
pFrag = (IRawElementProviderFragment*) m_parentProvider;
break;
case NavigateDirection_NextSibling:
pFrag = (IRawElementProviderFragment*) m_nextSiblingProvider;
break;
case NavigateDirection_PreviousSibling:
pFrag = (IRawElementProviderFragment*) m_previousSiblingProvider;
break;
}
*pRetVal = pFrag;
if (pFrag != NULL)
{
pFrag->AddRef();
}
return S_OK;
}
相關主題