Implementowanie wzorca kontrolki SelectionItem w automatyzacji interfejsu użytkownika
Notatka
Ta dokumentacja jest przeznaczona dla deweloperów programu .NET Framework, którzy chcą używać zarządzanych klas automatyzacji interfejsu użytkownika zdefiniowanych w przestrzeni nazw System.Windows.Automation. Aby uzyskać najnowsze informacje na temat automatyzacji interfejsu użytkownika, zobacz Windows Automation API: Automatyzacja interfejsu użytkownika.
W tym temacie przedstawiono wytyczne i konwencje implementowania ISelectionItemProvider, w tym informacje o właściwościach, metodach i zdarzeniach. Linki do dodatkowych odwołań znajdują się na końcu przeglądu.
Wzorzec kontrolki SelectionItemPattern służy do obsługi kontrolek, które działają jako pojedyncze, wybieralne elementy podrzędne kontrolek kontenera, które implementują ISelectionProvider. Przykłady kontrolek implementujących wzorzec kontrolki SelectionItem można znaleźć w temacie Control Pattern Mapping for UI Automation Clients.
Wytyczne i konwencje implementacji
Podczas implementowania wzorca kontrolki wyboru należy pamiętać o następujących wytycznych i konwencjach:
- Kontrolki wyboru jednokrotnego, które zarządzają kontrolkami podrzędnymi, które implementują IRawElementProviderFragmentRoot, takie jak suwak rozdzielczości ekranu w oknie dialogowym Właściwości Wyświetlania , powinny implementować ISelectionProvider, a ich elementy podrzędne powinny implementować zarówno IRawElementProviderFragment, jak i ISelectionItemProvider.
Wymagani członkowie dla ISelectionItemProvider
Do implementowania ISelectionItemProvidersą wymagane następujące właściwości, metody i zdarzenia.
Wymagani członkowie | Typ członka | Notatki |
---|---|---|
CanSelectMultiple | Własność | Żaden |
IsSelectionRequired | Własność | Żaden |
GetSelection | Metoda | Żaden |
InvalidatedEvent | Zdarzenie | Zgłaszane, gdy wybór w kontenerze uległ znacznej zmianie i wymaga wysyłania większej liczby zdarzeń ElementSelectedEvent i ElementRemovedFromSelectionEvent, niż jest dozwolone przez stałą InvalidateLimit. |
- Jeśli wynik Select, AddToSelectionlub RemoveFromSelection jest jednym wybranym elementem, należy podnieść ElementSelectedEvent; w przeciwnym razie wyślij ElementAddedToSelectionEvent/ ElementRemovedFromSelectionEvent odpowiednio.
Wyjątki
Dostawcy muszą zgłaszać następujące wyjątki.
Typ wyjątku | Warunek |
---|---|
InvalidOperationException | Gdy zostanie podjęta dowolna z następujących prób: - RemoveFromSelection jest wywoływana w kontenerze pojedynczego wyboru, w którym IsSelectionRequiredProperty, = , true i element jest już zaznaczony.- RemoveFromSelection jest używana w kontenerze wielokrotnego wyboru, gdzie IsSelectionRequiredProperty = true , a zaznaczony jest tylko jeden element.- AddToSelection jest wywoływany w kontenerze z jednym wyborem, w którym CanSelectMultipleProperty = false i inny element są już zaznaczone. |
Zobacz też
- Omówienie wzorców kontrolek automatyzacji interfejsu użytkownika
- obsługują wzorce kontrolek w dostawcy automatyzacji interfejsu użytkownika
- Wzorce kontrolek automatyzacji interfejsu użytkownika dla klientów
- implementowanie wzorca kontrolki wyboru automatyzacji interfejsu użytkownika
- Omówienie drzewa automatyzacji interfejsu użytkownika
- Użyj buforowania w automatyzacji interfejsu użytkownika
- Przykładowy dostawca fragmentów