IRawElementProviderAdviseEvents.AdviseEventAdded(Int32, Int32[]) Yöntem
Tanım
Önemli
Bazı bilgiler ürünün ön sürümüyle ilgilidir ve sürüm öncesinde önemli değişiklikler yapılmış olabilir. Burada verilen bilgilerle ilgili olarak Microsoft açık veya zımni hiçbir garanti vermez.
Bir UI Otomasyonu istemcisi, özellik değiştirme olayı da dahil olmak üzere belirli bir olayı dinlemeye başladığında UI Otomasyonu sağlayıcısına bildirir.
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())
Parametreler
- eventId
- Int32
Eklenen olayın tanımlayıcısı.
- properties
- Int32[]
Eklenen özelliklerin tanımlayıcıları veya null
eklenen olay dinleyicisi özellik olaylarını dinlemiyorsa.
Örnekler
Aşağıdaki örnek, abone olunan özellik değişiklikleri listesine eklenir.
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
Açıklamalar
Bu yöntem, sağlayıcının yalnızca dinlenen olayları yükselterek ek yükü azaltmasını sağlar.
eventId
, gibi WindowClosedEventbir AutomationEvent öğesinin Id değeriyle karşılaştırılabilir. komutunu kullanarak LookupByIdda elde AutomationEvent edebilirsiniz.