当前位置: 首页>>代码示例>>VB.NET>>正文


VB.NET AutomationElement.GetUpdatedCache方法代码示例

本文整理汇总了VB.NET中System.Windows.Automation.AutomationElement.GetUpdatedCache方法的典型用法代码示例。如果您正苦于以下问题:VB.NET AutomationElement.GetUpdatedCache方法的具体用法?VB.NET AutomationElement.GetUpdatedCache怎么用?VB.NET AutomationElement.GetUpdatedCache使用的例子?那么, 这里精选的方法代码示例或许可以为您提供帮助。


在下文中一共展示了AutomationElement.GetUpdatedCache方法的1个代码示例,这些例子默认根据受欢迎程度排序。您可以为喜欢或者感觉有用的代码点赞,您的评价将有助于系统推荐出更棒的VB.NET代码示例。

示例1: SetupComboElement

Private comboCacheRequest As CacheRequest
Private selectHandler As AutomationEventHandler
Private elementCombo As AutomationElement
Private selectedItem As AutomationElement


''' <summary>
''' Retrieves a combo box automation element, caches a pattern and a property,
''' and registers the event handler.
''' </summary>
''' <param name="elementAppWindow">The element for the parent window.</param>
Private Sub SetupComboElement(ByVal elementAppWindow As AutomationElement)
    ' Set up the CacheRequest.
    comboCacheRequest = New CacheRequest()
    comboCacheRequest.Add(SelectionPattern.Pattern)
    comboCacheRequest.Add(SelectionPattern.SelectionProperty)
    comboCacheRequest.Add(AutomationElement.NameProperty)
    comboCacheRequest.TreeScope = TreeScope.Element Or TreeScope.Descendants

    ' Activate the CacheRequest and get the element.
    Using comboCacheRequest.Activate()
        ' Load the combo box element and cache the specified properties and patterns.
        Dim propCondition As New PropertyCondition(AutomationElement.AutomationIdProperty, "comboBox1", PropertyConditionFlags.IgnoreCase)
        elementCombo = elementAppWindow.FindFirst(TreeScope.Descendants, propCondition)

        ' Get the list from the combo box.
        Dim propCondition1 As New PropertyCondition(AutomationElement.ControlTypeProperty, ControlType.List)
        Dim listElement As AutomationElement = elementCombo.FindFirst(TreeScope.Children, propCondition1)

        ' Register for ElementSelectedEvent on list items.
        selectHandler = New AutomationEventHandler(AddressOf OnListItemSelect)
        If (listElement IsNot Nothing) Then
            Automation.AddAutomationEventHandler(SelectionItemPattern.ElementSelectedEvent, listElement, _
            TreeScope.Children, selectHandler)
        End If
    End Using

End Sub


''' <summary>
''' Handle ElementSelectedEvent on items in the combo box.
''' </summary>
''' <param name="src">Object that raised the event.</param>
''' <param name="e">Event arguments.</param>
Private Sub OnListItemSelect(ByVal src As Object, ByVal e As AutomationEventArgs)
    ' Update the cache.
    Dim updatedElement As AutomationElement = elementCombo.GetUpdatedCache(comboCacheRequest)

    ' Retrieve the pattern and the selected item from the cache. This code is here only to 
    ' demonstrate that the current selection can now be retrieved from the cache. In an application,
    ' this would be done only when the information was needed.
    Dim pattern As SelectionPattern = _
        DirectCast(updatedElement.GetCachedPattern(SelectionPattern.Pattern), SelectionPattern)
    Dim selectedItems As AutomationElement() = pattern.Cached.GetSelection()
    selectedItem = selectedItems(0)

End Sub
开发者ID:VB.NET开发者,项目名称:System.Windows.Automation,代码行数:58,代码来源:AutomationElement.GetUpdatedCache


注:本文中的System.Windows.Automation.AutomationElement.GetUpdatedCache方法示例由纯净天空整理自Github/MSDocs等开源代码及文档管理平台,相关代码片段筛选自各路编程大神贡献的开源项目,源码版权归原作者所有,传播和使用请参考对应项目的License;未经允许,请勿转载。