ListView SelectionMode en Windows

Ejemplo de descarga Descarga del ejemplo

En la Plataforma Windows, de forma predeterminada usa el evento nativo para responder a la interacción, en lugar Xamarin.FormsListView del evento ItemClickTapped nativo. Esto proporciona funcionalidad de accesibilidad para que Windows narrador y el teclado puedan interactuar con ListView . Sin embargo, también representa los gestos de pulsar dentro ListView del elemento inoperable.

Esta plataforma Windows plataforma universal controla si los elementos de un objeto pueden responder a los gestos de pulsar y, por tanto, si el nativo ListViewListView desanima el ItemClick evento o Tapped . Se consume en XAML estableciendo la ListView.SelectionMode propiedad adjunta en un valor de la ListViewSelectionMode enumeración :

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

Como alternativa, se puede consumir desde C# mediante la API fluida:

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

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

El método especifica que esta plataforma específica solo se ejecutará en la plataforma ListView.On<Windows> Windows universal. El método Xamarin_Forms _PlatformConfiguration_WindowsSpecific_ListView_SetSelectionMode_ Xamarin_Forms _IPlatformElementConfiguration_ Xamarin_Forms _PlatformConfiguration_Windows_ _ListView__ Xamarin_FormsXamarin_Forms _PlatformConfiguration_WindowsSpecific_ListViewSelectionMode_" data-linktype="absolute-path">, ListView.SetSelectionModeXamarin.Forms.PlatformConfiguration.WindowsSpecificListViewListViewSelectionMode en el espacio de nombres , se usa para controlar si los elementos de un objeto pueden responder a los gestos de pulsación, y la enumeración proporciona dos valores posibles:

Nota:

Los modos de selección y son mutuamente excluyentes, y deberá elegir entre un accesible o un que Accessible pueda responder a los InaccessibleListViewListView gestos de pulsación.

Además, el método Xamarin_Forms _PlatformConfiguration_WindowsSpecific_ListView_GetSelectionMode_ Xamarin_Forms _IPlatformElementConfiguration_ Xamarin_Forms _PlatformConfiguration_Windows_ Xamarin_Forms _ListView__" data-linktype="absolute-path">GetSelectionMode se ListViewSelectionMode puede usar para devolver el actual.

El resultado es que un especificado se aplica a , que controla si los elementos de pueden responder a los gestos de pulsación y, por tanto, si el nativo ListViewSelectionModeListViewListViewListView descime el ItemClick evento Tapped o .