ListView SelectionMode en Windows
En el Plataforma universal de Windows, de forma predeterminada, Xamarin.FormsListView
usa el evento nativo ItemClick
para responder a la interacción, en lugar del evento nativoTapped
. Esto proporciona funcionalidad de accesibilidad para que el Narrador de Windows y el teclado puedan interactuar con ListView
. Sin embargo, también representa los gestos de pulsación dentro de la ListView
inoperable.
Esto Plataforma universal de Windows controles específicos de la plataforma si los elementos de un ListView
objeto pueden responder a gestos de pulsación y, por lo tanto, si el nativo ListView
desencadena 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 ListView.On<Windows>
método especifica que esta plataforma específica solo se ejecutará en el Plataforma universal de Windows. El ListView.SetSelectionMode
método , en el Xamarin.Forms.PlatformConfiguration.WindowsSpecific
espacio de nombres , se usa para controlar si los elementos de un objeto ListView
pueden responder a gestos de pulsación, con la ListViewSelectionMode
enumeración que proporciona dos valores posibles:
Accessible
: indica queListView
activará el evento nativoItemClick
para controlar la interacción y, por lo tanto, proporcionará funcionalidad de accesibilidad. Por lo tanto, el Narrador de Windows y el teclado pueden interactuar conListView
. Sin embargo, los elementos deListView
no pueden responder a gestos de pulsación. Este es el comportamiento predeterminado deListView
las instancias del Plataforma universal de Windows.Inaccessible
: indica queListView
activará el evento nativoTapped
para controlar la interacción. Por lo tanto, los elementos deListView
pueden responder a gestos de pulsación. Sin embargo, no hay ninguna funcionalidad de accesibilidad y, por tanto, el Narrador de Windows y el teclado no pueden interactuar con .ListView
Nota
Los Accessible
modos de selección y Inaccessible
son mutuamente excluyentes y tendrás que elegir entre un accesible ListView
o un que ListView
pueda responder a gestos de pulsación.
Además, el GetSelectionMode
método se puede usar para devolver el objeto actual ListViewSelectionMode
.
El resultado es que se aplica un objeto especificado a , ListView
que controla si los elementos de ListView
pueden responder a gestos de pulsación y, por lo tanto, si el nativo ListView
desencadena el ItemClick
evento o Tapped
.ListViewSelectionMode