Share via


ButtonBaseAutomationPeer Class

Definition

Represents a base class for exposing classes derived from ButtonBase to Microsoft UI Automation.

public ref class ButtonBaseAutomationPeer : FrameworkElementAutomationPeer
/// [Windows.Foundation.Metadata.ContractVersion(Microsoft.UI.Xaml.WinUIContract, 65536)]
/// [Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
/// [Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
class ButtonBaseAutomationPeer : FrameworkElementAutomationPeer
[Windows.Foundation.Metadata.ContractVersion(typeof(Microsoft.UI.Xaml.WinUIContract), 65536)]
[Windows.Foundation.Metadata.MarshalingBehavior(Windows.Foundation.Metadata.MarshalingType.Agile)]
[Windows.Foundation.Metadata.Threading(Windows.Foundation.Metadata.ThreadingModel.Both)]
public class ButtonBaseAutomationPeer : FrameworkElementAutomationPeer
Public Class ButtonBaseAutomationPeer
Inherits FrameworkElementAutomationPeer
Inheritance
Object Platform::Object IInspectable DependencyObject AutomationPeer FrameworkElementAutomationPeer ButtonBaseAutomationPeer
Derived
Attributes

Remarks

ButtonBaseAutomationPeer has a protected constructor, so you won't be able to use it directly for an OnCreateAutomationPeer definition. Derive your automation peer from ButtonBaseAutomationPeer if you are deriving a custom class from ButtonBase and want to add automation support for additional features that you enabled in your custom class. Then override OnCreateAutomationPeer so that it returns your custom peer. Note that ButtonBase already has derived classes, each of which also has a derived peer, so make sure that you really want to derive from this base class rather than use one of the existing XAML-enabled derived button classes.

Default peer implementation and overrides in ButtonBaseAutomationPeer

ButtonAutomationPeer has overrides of Core methods such that the associated AutomationPeer methods provide peer-specific information to a Microsoft UI Automation client.

There is no "ControlAutomationPeer" class. FrameworkElementAutomationPeer serves as implementation for all basic Control class scenarios that involve Microsoft UI Automation. This includes behavior that does not necessarily appear as a public API exposure, such as the practical implementations of many of the Core methods from AutomationPeer.

FrameworkElementAutomationPeer includes extensive base implementation of peer behavior that other peers can use to report information that comes from owner classes at the UIElement and FrameworkElement level. For more info, see "Base implementation in FrameworkElementAutomationPeer" section of Custom automation peers.

In addition to the Core overrides, FrameworkElementAutomationPeer has two static utility methods that are useful for getting a peer handle from within control code, or for generating items peers from an item container peer for Microsoft UI Automation support. These are:

If you have a need to define a custom automation peer and can't identify a more derived peer class that pairs up with the control or base class you are deriving the owner class from, you should base your peer on FrameworkElementAutomationPeer. Even if the owner class isn't necessarily a FrameworkElement, you can't practically derive peers from AutomationPeer directly because FrameworkElementAutomationPeer has many overrides that provide the expected behavior for layout, automation and UI interactions. You do need to derive your owner class from UIElement at least, otherwise there is no way to create the peer on automation tree load with OnCreateAutomationPeer.

ButtonBaseAutomationPeer derived classes

ButtonBaseAutomationPeer is the parent class for several immediately derived classes that implement peer support for Windows Runtime controls. Here is the list of classes that directly derive from ButtonBaseAutomationPeer:

Constructors

ButtonBaseAutomationPeer(ButtonBase)

Provides base class initialization behavior for ButtonBase derived classes.

Properties

Dispatcher

Always returns null in a Windows App SDK app. Use DispatcherQueue instead.

(Inherited from DependencyObject)
DispatcherQueue

Gets the DispatcherQueue that this object is associated with. The DispatcherQueue represents a facility that can access the DependencyObject on the UI thread even if the code is initiated by a non-UI thread.

(Inherited from DependencyObject)
EventsSource

Gets or sets an AutomationPeer that is reported to the automation client as the source for all the events that come from this AutomationPeer. See Remarks.

(Inherited from AutomationPeer)
Owner

Gets the UIElement owner that is associated with this FrameworkElementAutomationPeer.

(Inherited from FrameworkElementAutomationPeer)

Methods

ClearValue(DependencyProperty)

Clears the local value of a dependency property.

(Inherited from DependencyObject)
GetAcceleratorKey()

Gets the accelerator key combinations for the object that is associated with the UI Automation peer.

(Inherited from AutomationPeer)
GetAcceleratorKeyCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetAcceleratorKey or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetAccessKey()

Gets the access key for the element that is associated with the automation peer.

(Inherited from AutomationPeer)
GetAccessKeyCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetAccessKey or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetAnimationBaseValue(DependencyProperty)

Returns any base value established for a dependency property, which would apply in cases where an animation is not active.

(Inherited from DependencyObject)
GetAnnotations()

Gets a reference to the list of UI automation annotations for the current automation peer.

(Inherited from AutomationPeer)
GetAnnotationsCore()

Provides the behavior of the peer when a Microsoft UI Automation client calls GetAnnotations or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetAutomationControlType()

Gets the control type for the element that is associated with the UI Automation peer.

(Inherited from AutomationPeer)
GetAutomationControlTypeCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetAutomationControlType or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetAutomationId()

Gets the AutomationId of the element that is associated with the automation peer.

(Inherited from AutomationPeer)
GetAutomationIdCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetAutomationId or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetBoundingRectangle()

Gets the Rect object that represents the screen coordinates of the element that is associated with the automation peer.

(Inherited from AutomationPeer)
GetBoundingRectangleCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetBoundingRectangle or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetChildren()

Gets the collection of child elements that are represented in the UI Automation tree as immediate child elements of the automation peer.

(Inherited from AutomationPeer)
GetChildrenCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetChildren or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetClassName()

Gets a name that is used with AutomationControlType, to differentiate the control that is represented by this AutomationPeer.

(Inherited from AutomationPeer)
GetClassNameCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetClassName or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetClickablePoint()

Gets a point on the element that is associated with the automation peer that responds to a mouse click.

(Inherited from AutomationPeer)
GetClickablePointCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetClickablePoint or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetControlledPeers()

Provides the peer's behavior when a Microsoft UI Automation client calls GetControlledPeers or an equivalent Microsoft UI Automation client API such as getting a property value as identified by UIA_ControllerForPropertyId.

(Inherited from AutomationPeer)
GetControlledPeersCore()

Gets a list of the controlled peers for the current automation peer.

(Inherited from AutomationPeer)
GetCulture()

Calls GetCultureCore to get the culture value for the element that is associated with the automation peer.

(Inherited from AutomationPeer)
GetCultureCore()

Gets the culture value for the element that is associated with the automation peer.

(Inherited from AutomationPeer)
GetDescribedByCore()

Gets a collection of elements that provide more information about the automation element.

(Inherited from AutomationPeer)
GetElementFromPoint(Point)

Gets an element from the specified point.

(Inherited from AutomationPeer)
GetElementFromPointCore(Point)

Provides the behavior of the peer when a Microsoft UI Automation client calls GetElementFromPoint or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetFlowsFromCore()

Provides the peer's behavior when a Microsoft UI Automation client calls AutomationProperties.GetFlowsFrom or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetFlowsToCore()

Provides the peer's behavior when a Microsoft UI Automation client calls AutomationProperties.GetFlowsTo or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetFocusedElement()

Gets the element that currently has the focus.

(Inherited from AutomationPeer)
GetFocusedElementCore()

Provides the behavior of the peer when a Microsoft UI Automation client calls GetFocusedElement or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetFullDescription()

Gets a localized string that describes the actual visual appearance or contents of something such as an image or image control.

(Inherited from AutomationPeer)
GetFullDescriptionCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetFullDescription or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetHeadingLevel()

Gets the heading level of the UI Automation element that is associated with this automation peer.

(Inherited from AutomationPeer)
GetHeadingLevelCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetHeadingLevel or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetHelpText()

Gets text that describes the functionality of the control that is associated with the automation peer.

(Inherited from AutomationPeer)
GetHelpTextCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetHelpText or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetItemStatus()

Gets text that conveys the visual status of the element that is associated with this automation peer.

(Inherited from AutomationPeer)
GetItemStatusCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetItemStatus or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetItemType()

Gets a string that describes what kind of item an element represents.

(Inherited from AutomationPeer)
GetItemTypeCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetItemType or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetLabeledBy()

Gets the AutomationPeer for the UIElement that is targeted to the element.

(Inherited from AutomationPeer)
GetLabeledByCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetLabeledBy or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetLandmarkType()

Gets the landmark type for this automation peer.

(Inherited from AutomationPeer)
GetLandmarkTypeCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetLandmarkType or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetLevel()

Returns the 1-based integer for the level (hierarchy) of the element that is associated with the automation peer.

(Inherited from AutomationPeer)
GetLevelCore()

Provides the behavior of the peer when a Microsoft UI Automation client calls GetLevel or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetLiveSetting()

Gets the live setting notification behavior information for the object that is associated with the UI Automation peer.

(Inherited from AutomationPeer)
GetLiveSettingCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetLiveSetting or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetLocalizedControlType()

Gets a localized string that represents the AutomationControlType value for the control that is associated with this automation peer.

(Inherited from AutomationPeer)
GetLocalizedControlTypeCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetLocalizedControlType or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetLocalizedLandmarkType()

Gets a localized string that represents the AutomationLandmarkType value for the element that is associated with this automation peer.

(Inherited from AutomationPeer)
GetLocalizedLandmarkTypeCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetLocalizedLandmarkType or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetName()

Gets text that describes the element that is associated with this automation peer. The Microsoft UI Automation Name value is the primary identifier used by most assistive technology when they represent your app's UI by interacting with the Microsoft UI Automation framework.

(Inherited from AutomationPeer)
GetNameCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetName or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetOrientation()

Gets a value that indicates the explicit control orientation, if any.

(Inherited from AutomationPeer)
GetOrientationCore()

Provides the peer's behavior when a Microsoft UI Automation client calls GetOrientation or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetParent()

Gets the AutomationPeer that is the parent of this AutomationPeer.

(Inherited from AutomationPeer)
GetPattern(PatternInterface)

Gets the control pattern that is associated with the specified PatternInterface.

(Inherited from AutomationPeer)
GetPatternCore(PatternInterface)

Provides the peer's behavior when a Microsoft UI Automation client calls GetPattern or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetPeerFromPoint(Point)

Gets an AutomationPeer from the specified point.

(Inherited from AutomationPeer)
GetPeerFromPointCore(Point)

Provides the peer's behavior when a Microsoft UI Automation client calls GetPeerFromPoint or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetPositionInSet()

Returns the 1-based integer for the ordinal position in the set for the element that is associated with the automation peer.

(Inherited from AutomationPeer)
GetPositionInSetCore()

Provides the peer’s behavior when a Microsoft UI Automation client calls GetPositionInSet or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetSizeOfSet()

Returns the 1-based integer for the size of the set where the element that is associated with the automation peer is located.

(Inherited from AutomationPeer)
GetSizeOfSetCore()

Provides the peer’s behavior when a Microsoft UI Automation client calls GetSizeOfSet or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
GetValue(DependencyProperty)

Returns the current effective value of a dependency property from a DependencyObject.

(Inherited from DependencyObject)
HasKeyboardFocus()

Gets a value that indicates whether the element that is associated with this automation peer currently has keyboard focus.

(Inherited from AutomationPeer)
HasKeyboardFocusCore()

Provides the peer's behavior when a Microsoft UI Automation client calls HasKeyboardFocus or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
InvalidatePeer()

Triggers recalculation of the main properties of the AutomationPeer and raises the PropertyChanged notification to the automation client if the properties have changed.

(Inherited from AutomationPeer)
IsContentElement()

Gets a value that indicates whether the element that is associated with this automation peer contains data that is presented to the user.

(Inherited from AutomationPeer)
IsContentElementCore()

Provides the peer's behavior when a Microsoft UI Automation client calls IsContentElement or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
IsControlElement()

Gets a value that indicates whether the element is understood by the user as interactive or as contributing to the logical structure of the control in the GUI.

(Inherited from AutomationPeer)
IsControlElementCore()

Provides the peer's behavior when a Microsoft UI Automation client calls IsControlElement or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
IsDataValidForForm()

Gets a Boolean value that indicates whether the entered or selected value is valid for the form rule associated with the automation element.

(Inherited from AutomationPeer)
IsDataValidForFormCore()

Provides the peer’s behavior when a Microsoft UI Automation client accesses IsDataValidForForm or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
IsDialog()

Gets a value that indicates whether the element associated with this automation peer is a dialog window.

(Inherited from AutomationPeer)
IsDialogCore()

Provides the peer's behavior when a Microsoft UI Automation client calls IsDialog or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
IsEnabled()

Gets a value that indicates whether the element associated with this automation peer supports interaction.

(Inherited from AutomationPeer)
IsEnabledCore()

Provides the peer's behavior when a Microsoft UI Automation client calls IsEnabled or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
IsKeyboardFocusable()

Gets a value that indicates whether the element can accept keyboard focus.

(Inherited from AutomationPeer)
IsKeyboardFocusableCore()

Provides the peer's behavior when a Microsoft UI Automation client calls IsKeyboardFocusable or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
IsOffscreen()

Gets a value that indicates whether an element is off the screen.

(Inherited from AutomationPeer)
IsOffscreenCore()

Provides the peer's behavior when a Microsoft UI Automation client calls IsOffscreen or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
IsPassword()

Gets a value that indicates whether the element contains sensitive content.

(Inherited from AutomationPeer)
IsPasswordCore()

Provides the peer's behavior when a Microsoft UI Automation client calls IsPassword or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
IsPeripheral()

Gets a Boolean value that indicates whether the automation element represents peripheral UI.

(Inherited from AutomationPeer)
IsPeripheralCore()

Provides the peer’s behavior when a Microsoft UI Automation client accesses IsPeripheral or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
IsRequiredForForm()

Gets a value that indicates whether the element that is associated with this peer must be completed on a form.

(Inherited from AutomationPeer)
IsRequiredForFormCore()

Provides the peer's behavior when a Microsoft UI Automation client calls IsRequiredForForm or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
Navigate(AutomationNavigationDirection)

Gets the element in the specified direction within the UI automation tree.

(Inherited from AutomationPeer)
NavigateCore(AutomationNavigationDirection)

Provides the peer’s behavior when a Microsoft UI Automation client calls Navigate or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
PeerFromProvider(IRawElementProviderSimple)

Gets an AutomationPeer for the specified IRawElementProviderSimple proxy.

(Inherited from AutomationPeer)
ProviderFromPeer(AutomationPeer)

Gets the IRawElementProviderSimple proxy for the specified AutomationPeer.

(Inherited from AutomationPeer)
RaiseAutomationEvent(AutomationEvents)

Raises an automation event.

(Inherited from AutomationPeer)
RaiseNotificationEvent(AutomationNotificationKind, AutomationNotificationProcessing, String, String)

Initiates a notification event.

(Inherited from AutomationPeer)
RaisePropertyChangedEvent(AutomationProperty, Object, Object)

Raises an event to notify the automation client of a changed property value.

(Inherited from AutomationPeer)
RaiseStructureChangedEvent(AutomationStructureChangeType, AutomationPeer)

Raises an event to notify the Microsoft UI Automation core that the tree structure has changed.

(Inherited from AutomationPeer)
RaiseTextEditTextChangedEvent(AutomationTextEditChangeType, IVectorView<String>)

Raises an event to notify the Microsoft UI Automation core that a text control has programmatically changed text.

(Inherited from AutomationPeer)
ReadLocalValue(DependencyProperty)

Returns the local value of a dependency property, if a local value is set.

(Inherited from DependencyObject)
RegisterPropertyChangedCallback(DependencyProperty, DependencyPropertyChangedCallback)

Registers a notification function for listening to changes to a specific DependencyProperty on this DependencyObject instance.

(Inherited from DependencyObject)
SetFocus()

Sets the keyboard focus on the element that is associated with this automation peer.

(Inherited from AutomationPeer)
SetFocusCore()

Provides the peer's behavior when a Microsoft UI Automation client calls SetFocus or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
SetParent(AutomationPeer)

Sets the AutomationPeer that is the parent of this AutomationPeer.

(Inherited from AutomationPeer)
SetValue(DependencyProperty, Object)

Sets the local value of a dependency property on a DependencyObject.

(Inherited from DependencyObject)
ShowContextMenu()

Shows the available context menu for the owner element.

(Inherited from AutomationPeer)
ShowContextMenuCore()

Provides the peer's behavior when a Microsoft UI Automation client calls ShowContextMenu or an equivalent Microsoft UI Automation client API.

(Inherited from AutomationPeer)
UnregisterPropertyChangedCallback(DependencyProperty, Int64)

Cancels a change notification that was previously registered by calling RegisterPropertyChangedCallback.

(Inherited from DependencyObject)

Applies to

See also