IRawElementProviderAdviseEvents.AdviseEventAdded(Int32, Int32[]) 메서드
정의
중요
일부 정보는 릴리스되기 전에 상당 부분 수정될 수 있는 시험판 제품과 관련이 있습니다. Microsoft는 여기에 제공된 정보에 대해 어떠한 명시적이거나 묵시적인 보증도 하지 않습니다.
UI 자동화 클라이언트가 속성 변경 이벤트를 비롯하여 특정 이벤트에 대한 수신 대기를 시작한 경우 UI 자동화 공급자에 이를 알립니다.
public:
void AdviseEventAdded(int eventId, cli::array <int> ^ properties);
public void AdviseEventAdded (int eventId, int[] properties);
abstract member AdviseEventAdded : int * int[] -> unit
Public Sub AdviseEventAdded (eventId As Integer, properties As Integer())
매개 변수
- eventId
- Int32
추가되는 이벤트의 식별자입니다.
- properties
- Int32[]
추가되는 속성의 식별자이거나, 추가되는 이벤트 수신기가 속성 이벤트를 수신 대기하지 않는 경우 null
입니다.
예제
다음 예제에서는 구독된 속성 변경 내용 목록에 를 추가합니다.
void IRawElementProviderAdviseEvents.AdviseEventAdded(int eventId,
int[] properties)
{
if (eventId == AutomationElement.AutomationPropertyChangedEvent.Id)
{
foreach (int i in properties)
{
AutomationProperty property = AutomationProperty.LookupById(i);
// Add to an ArrayList.
subscribedProperties.Add(property);
}
}
}
Sub AdviseEventAdded(ByVal eventId As Integer, ByVal properties() As Integer) _
Implements IRawElementProviderAdviseEvents.AdviseEventAdded
If eventId = AutomationElement.AutomationPropertyChangedEvent.Id Then
For Each i As Integer In properties
Dim autoProperty As AutomationProperty = AutomationProperty.LookupById(i)
' Add to an ArrayList.
subscribedProperties.Add(autoProperty)
Next
End If
End Sub
설명
이 메서드를 사용하면 수신 대기 중인 이벤트만 발생시켜 공급자가 오버헤드를 줄일 수 있습니다.
은 eventId
과 같은 WindowClosedEvent의 AutomationEvent 와 비교할 Id 수 있습니다. 를 사용하여 LookupById를 AutomationEvent 가져올 수도 있습니다.
적용 대상
GitHub에서 Microsoft와 공동 작업
이 콘텐츠의 원본은 GitHub에서 찾을 수 있으며, 여기서 문제와 끌어오기 요청을 만들고 검토할 수도 있습니다. 자세한 내용은 참여자 가이드를 참조하세요.
.NET