ListView SelectionMode w systemie Windows

Pobierz przykład Pobieranie przykładu

Na platforma uniwersalna systemu Windows domyślnie Xamarin.FormsListView program używa zdarzenia natywnego ItemClick do reagowania na interakcję, a nie zdarzenia natywnegoTapped. Zapewnia to funkcje ułatwień dostępu, dzięki czemu Narrator systemu Windows i klawiatura mogą wchodzić w interakcje z programem ListView. Jednak renderuje również wszelkie gesty naciśnięcia wewnątrz ListView niedziałalnej.

To platforma uniwersalna systemu Windows specyficzne dla platformy określa, czy elementy w obiekcie ListView mogą reagować na gesty naciśnięcia, a tym samym, czy natywne ListView uruchamia ItemClick zdarzenie lub Tapped . Jest on używany w języku XAML przez ustawienie dołączonej ListView.SelectionMode właściwości na wartość ListViewSelectionMode wyliczenia:

<ContentPage ...
             xmlns:windows="clr-namespace:Xamarin.Forms.PlatformConfiguration.WindowsSpecific;assembly=Xamarin.Forms.Core">
    <StackLayout>
        <ListView ... windows:ListView.SelectionMode="Inaccessible">
            ...
        </ListView>
    </StackLayout>
</ContentPage>

Alternatywnie można go używać w języku C# przy użyciu płynnego interfejsu API:

using Xamarin.Forms.PlatformConfiguration;
using Xamarin.Forms.PlatformConfiguration.WindowsSpecific;
...

listView.On<Windows>().SetSelectionMode(ListViewSelectionMode.Inaccessible);

Metoda ListView.On<Windows> określa, że ta platforma będzie działać tylko na platforma uniwersalna systemu Windows. Metoda ListView.SetSelectionMode w Xamarin.Forms.PlatformConfiguration.WindowsSpecific przestrzeni nazw służy do kontrolowania, czy elementy w obiekcie ListView mogą reagować na gesty naciśnięcia, a ListViewSelectionMode wyliczenie zapewnia dwie możliwe wartości:

  • Accessible — wskazuje, że ListView spowoduje to wyzwolenie zdarzenia natywnego ItemClick w celu obsługi interakcji, a tym samym zapewnienia funkcjonalności ułatwień dostępu. W związku z tym Narrator systemu Windows i klawiatura mogą wchodzić w interakcje z programem ListView. Jednak elementy w obiekcie ListView nie mogą reagować na gesty naciśnięcia. Jest to domyślne zachowanie dla ListView wystąpień w platforma uniwersalna systemu Windows.
  • Inaccessible — wskazuje, że ListView zostanie wyzwolony natywne Tapped zdarzenie w celu obsługi interakcji. W związku z tym elementy w obiekcie ListView mogą reagować na gesty naciśnięcia. Nie ma jednak funkcji ułatwień dostępu, dlatego Narrator systemu Windows i klawiatura nie mogą wchodzić w interakcje z programem ListView.

Uwaga

Tryby Accessible wyboru i Inaccessible są wzajemnie wykluczające się i należy wybrać między dostępnym ListView lub ListView , który może reagować na gesty naciśnięcia.

Ponadto można użyć metody , GetSelectionMode aby zwrócić bieżący ListViewSelectionModeelement .

Wynikiem jest zastosowanie określonego ListViewSelectionModeListViewelementu do elementu , który kontroluje, czy elementy w obiekcie ListView mogą reagować na gesty naciśnięcia, a tym samym, czy natywne ListView wyzwala ItemClick zdarzenie lub Tapped .