FrameworkElementAutomationPeer.FromElement(UIElement) 方法
定义
重要
一些信息与预发行产品相关,相应产品在发行之前可能会进行重大修改。 对于此处提供的信息,Microsoft 不作任何明示或暗示的担保。
public:
static AutomationPeer ^ FromElement(UIElement ^ element);
static AutomationPeer FromElement(UIElement const& element);
public static AutomationPeer FromElement(UIElement element);
function fromElement(element)
Public Shared Function FromElement (element As UIElement) As AutomationPeer
参数
返回
FrameworkElementAutomationPeer;如果无法创建 FrameworkElementAutomationPeer,则为 null。
示例
在实现 OnCreateAutomationPeer 时,自动化支持设计不会保留你自己的对等节点的句柄,因为无法保证何时实际创建对等。 相反,可以使用如下所示的代码,在控件类定义中实时为运行时自动化事件侦听器检查:
if (AutomationPeer.ListenerExists(AutomationEvents.PropertyChanged))
{
MyAutomationPeer peer =
FrameworkElementAutomationPeer.FromElement(myCtrl) as MyAutomationPeer;
if (peer != null)
{
peer.RaisePropertyChangedEvent(
RangeValuePatternIdentifiers.ValueProperty,
(double)oldValue,
(double)newValue);
}
}
If AutomationPeer.ListenerExists(AutomationEvents.PropertyChanged) Then
Dim peer As MyDownAutomationPeer = _
TryCast(FrameworkElementAutomationPeer.FromElement(myCtrl), MyAutomationPeer)
If peer IsNot Nothing Then
peer.RaisePropertyChangedEvent(RangeValuePatternIdentifiers.ValueProperty, CDbl(oldValue), CDbl(newValue))
End If
End If
注解
FromElement 是自定义控件代码用来返回操作对等实例的帮助程序类。 使用返回的对等,可以从同样触发常规控制逻辑事件或更改控件属性的同一例程内触发自动化事件。 或者,可以编写自己的帮助程序方法来执行此操作,并从控件逻辑调用。
CreatePeerForElement 的行为与 FromElement 基本相同。
如果 FromElement 返回 null,可能是因为传递的元素没有 OnCreateAutomationPeer 的实现。
即使由于某种原因 CreateAutomationPeer 系统逻辑尚未在 元素 目标上运行,FromElement 也可以返回对等方。 它将在内部调用相同的 CreateAutomationPeer 逻辑以获取对等方。
适用于
另请参阅
反馈
https://aka.ms/ContentUserFeedback。
即将发布:在整个 2024 年,我们将逐步淘汰作为内容反馈机制的“GitHub 问题”,并将其取代为新的反馈系统。 有关详细信息,请参阅:提交和查看相关反馈