CacheRequest Class
Specifies properties and patterns that the UI Automation framework caches when an AutomationElement is obtained.
Assembly: UIAutomationClient (in UIAutomationClient.dll)
The CacheRequest type exposes the following members.
| Name | Description | |
|---|---|---|
![]() | AutomationElementMode | Gets or sets a value that specifies whether returned elements should contain full references to the underlying user interface (UI), or only cached information. |
![]() ![]() | Current | Gets the CacheRequest that is active on the current thread. |
![]() | TreeFilter | Gets or sets a value specifying the view of the UI Automation element tree to use when caching. |
![]() | TreeScope | Gets or sets a value that specifies whether caching is done only for the root of the subtree, or also for its children or descendants. |
| Name | Description | |
|---|---|---|
![]() | Activate | Sets this CacheRequest as the active specification for the items that are returned when an AutomationElement is requested on the same thread. |
![]() | Add(AutomationPattern) | Adds the specified AutomationPattern identifier to this CacheRequest. |
![]() | Add(AutomationProperty) | Adds the specified AutomationProperty identifier to this CacheRequest. |
![]() | Clone | Creates a copy of this CacheRequest. |
![]() | Equals(Object) | Determines whether the specified Object is equal to the current Object. (Inherited from Object.) |
![]() | Finalize | Allows an object to try to free resources and perform other cleanup operations before it is reclaimed by garbage collection. (Inherited from Object.) |
![]() | GetHashCode | Serves as a hash function for a particular type. (Inherited from Object.) |
![]() | GetType | Gets the Type of the current instance. (Inherited from Object.) |
![]() | MemberwiseClone | Creates a shallow copy of the current Object. (Inherited from Object.) |
![]() | Pop | Removes the active CacheRequest from the internal stack for the current thread. |
![]() | Push | Places the CacheRequest on the internal state stack, making it the active request on the current thread. |
![]() | ToString | Returns a string that represents the current object. (Inherited from Object.) |
Retrieving properties and patterns through UI Automation requires cross-process calls that can slow down performance. By caching values of proprieties and patterns in a batch operation, you can enhance the performance of your application.
Create a new cache request by calling the class constructor. The request is populated by repeated calls to the Add method.
Only a single CacheRequest can be active. There are two ways to activate a request:
Call Activate on the request. This pushes the request onto the stack, and the request is popped when the object is disposed. To ensure disposal even if an exception is raised, use the return value from Activate within a using block (Using in Microsoft Visual Basic .NET).
Put the request onto the internal stack by calling Push. Only the topmost request on the stack is active, and it must be the next one removed from the stack by Pop. Popping the request deactivates it.
UI Automation elements obtained while the request is active will have cached values for the properties and patterns specified.
Windows 7, Windows Vista SP1 or later, Windows XP SP3, Windows Server 2008 (Server Core not supported), Windows Server 2008 R2 (Server Core supported with SP1 or later), Windows Server 2003 SP2
The .NET Framework does not support all versions of every platform. For a list of the supported versions, see .NET Framework System Requirements.
