共用方式為


如何在消費者介面自動化片段提供者中啟用導覽

本主題包含範例程式碼,示範如何在片段中的元素啟用 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;
}              

概念

實作Server-Side 消費者介面自動化提供者

消費者介面自動化提供者的操作說明主題