Nuta
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zalogować się lub zmienić katalogi.
Dostęp do tej strony wymaga autoryzacji. Możesz spróbować zmienić katalogi.
Uwaga / 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 IGridProvider, w tym informacje o właściwościach, metodach i zdarzeniach. Linki do dodatkowych odwołań znajdują się na końcu przeglądu.
Wzorzec GridPattern kontrolki służy do obsługi kontrolek, które działają jako kontenery dla kolekcji elementów podrzędnych. Elementy podrzędne tego elementu muszą implementować IGridItemProvider i być zorganizowane w dwuwymiarowym układzie współrzędnych logicznych, który można przechodzić wierszami i kolumnami. Przykłady kontrolek implementujących ten wzorzec kontrolki można znaleźć w temacie Control Pattern Mapping for UI Automation Clients.
Wytyczne i konwencje implementacji
Podczas implementowania wzorca kontrolki Siatka należy pamiętać o następujących wytycznych i konwencjach:
Współrzędne siatki są oparte na zerze, przy czym lewa górna komórka (lub prawa górna, w zależności od ustawień regionalnych) ma współrzędne (0, 0).
Jeśli komórka jest pusta, należy nadal zwracać element automatyzacji interfejsu użytkownika w celu obsługi właściwości ContainingGrid dla tej komórki. Jest to możliwe, gdy układ elementów podrzędnych w siatce jest podobny do poszarpanej tablicy (zobacz przykład poniżej).
Przykład kontrolki siatki z pustymi współrzędnymi
Siatka z pojedynczym elementem jest nadal wymagana do zaimplementowania IGridProvider, jeśli jest logicznie traktowana jako siatka. Liczba elementów podrzędnych w siatce jest niematerialna.
Ukryte wiersze i kolumny, w zależności od implementacji dostawcy, mogą zostać załadowane w drzewie automatyzacji interfejsu użytkownika i dlatego zostaną odzwierciedlone we właściwościach RowCount i ColumnCount . Jeśli ukryte wiersze i kolumny nie zostały jeszcze załadowane, nie powinny być zliczane.
IGridProvider nie umożliwia aktywnego manipulowania siatką; ITransformProvider należy zaimplementować, aby włączyć tę funkcję.
Użyj elementu StructureChangedEventHandler, aby nasłuchiwać zmian strukturalnych lub zmiany układu siatki, takich jak komórki, które zostały dodane, usunięte lub scalone.
Użyj AutomationFocusChangedEventHandler, aby śledzić przechodzenie przez elementy lub komórki siatki.
Wymagani członkowie w IGridProvider
Następujące właściwości i metody są wymagane do zaimplementowania interfejsu IGridProvider.
| Wymagani członkowie | Typ | Notatki |
|---|---|---|
| RowCount | Majątek | Żaden |
| ColumnCount | Majątek | Żaden |
| GetItem | Metoda | Żaden |
Ten wzorzec kontrolki nie ma skojarzonych zdarzeń.
Wyjątki
Dostawcy muszą zgłaszać następujące wyjątki.
| Typ wyjątku | Warunek |
|---|---|
| ArgumentOutOfRangeException | GetItem - Jeśli żądana współrzędna wiersza jest większa niż RowCount lub współrzędna kolumny jest większa niż ColumnCount. |
| ArgumentOutOfRangeException | GetItem — Jeśli którakolwiek z żądanych współrzędnych wiersza lub kolumny jest mniejsza niż zero. |
Zobacz także
- Omówienie wzorców automatyzacji kontrolek 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 GridItem w automatyzacji UI
- Omówienie drzewa automatyzacji interfejsu użytkownika
- Użyj buforowania w automatyzacji interfejsu użytkownika