Je veux créer une case à cocher dans la vue de liste en utilisant xaml, après avoir sélectionné la case à cocher multiple, cliquez sur le bouton pour obtenir toutes les valeurs sélectionnées. Mon code est:
<ContentPage.Content> <ListView x:Name="ProductsListView"> <ListView.ItemTemplate> <DataTemplate> <ViewCell> <ViewCell.View> <StackLayout Spacing="0"> <Label Text="{Binding retail_modified_item_id}" TextColor="Blue" FontSize="13" /> <Label Text="{Binding name, StringFormat='Name : {0:N}'}" TextColor="black" FontSize="10" /> <Label Text="{Binding retail_price, StringFormat='Price : {0:N}'}" TextColor="black" FontSize="10" /> </StackLayout> </ViewCell.View> </ViewCell> </DataTemplate> </ListView.ItemTemplate> </ListView> </ContentPage.Content>
mon la sortie est; sortie sans case à cocher
J'ai essayé un exemple de code de https: // www .ignatiuz.com / blog / xamarin / button-check-box-with-list-item-in-xamarin-forms-listview /
mais je reçois une entrée: case à cocher introuvable
Je suis nouveau sur xamarin, veuillez donner un exemple de code ou un lien pour le faire
4 Réponses :
Vous pouvez utiliser Plugin.InputKit de Nuget.
Utilisation
<?xml version="1.0" encoding="utf-8" ?> <ContentPage xmlns="http://xamarin.com/schemas/2014/forms" xmlns:x="http://schemas.microsoft.com/winfx/2009/xaml" xmlns:local="clr-namespace:xxx" xmlns:input="clr-namespace:Plugin.InputKit.Shared.Controls;assembly=Plugin.InputKit" x:Class="xxx.MainPage"> <ContentPage.Content> <ListView x:Name="ProductsListView"> <ListView.ItemTemplate> <DataTemplate> <ViewCell> <ViewCell.View> <StackLayout Spacing="0"> <Label Text="{Binding retail_modified_item_id}" TextColor="Blue" FontSize="13" /> <Label Text="{Binding name, StringFormat='Name : {0:N}'}" TextColor="black" FontSize="10" /> <Label Text="{Binding retail_price, StringFormat='Price : {0:N}'}" TextColor="black" FontSize="10" /> <input:CheckBox Text="xxx" Type="Check"/> </StackLayout> </ViewCell.View> </ViewCell> </DataTemplate> </ListView.ItemTemplate> </ListView> </ContentPage.Content> </ContentPage>
@AnuPriya pouvez-vous fournir l'échantillon?
J'ai écrit un contenu sur l'implémentation de la vue de liste à sélection multiple dans les formulaires xamarin. Veuillez vérifier ceci: https: //androidwithashray.blogspot. com / 2018/03 / vue-liste-multiselecte-avec-xamarin.html
J'espère que cela vous aidera.
Si vous avez besoin de cases à cocher dans une liste, vous pouvez utiliser Xamarin.Forms.InputKi ( https://github.com/enisn/Xamarin.Forms.InputKit )
Ensuite, je le définirais comme ceci dans ViewCell d'un DataTemplate:
<input:CheckBox Text="Hello World I'm Option 2" Type="Check"/>
Il existe également des propriétés et des événements pouvant être liés que vous pouvez utiliser en fonction de votre scénario:
CheckChanged: (Event) S'appelle lorsque la vérification est modifiée.
CheckChangedCommand: (Command) Commande pouvant être liée, exécutée lors de la vérification changé.
Clé: (int) Une clé que vous pouvez définir pour définir des cases à cocher comme ID.
Texte: (chaîne) Texte pour afficher la description
IsChecked: (booléen) Situation cochée. Fonctionne TwoWay Binding comme par défaut.
Couleur: (Couleur) Couleur du chèque sélectionné.
TextColor: (Color) Couleur du texte de description.
Type: (CheckType) Type de style coché. (Chèque, Croix, Étoile, Boîte, etc.)
Ajoutez / supprimez une valeur à la collection locale à l'aide de la méthode OnCheckChanged
.
J'ai utilisé de cette façon:
<ListView> <ListView.ItemTemplate> <DataTemplate> <ViewCell> <StackLayout Orientation="Horizontal"> <Label Text="Some item" /> <CheckBox IsChecked="true" CheckedChanged="OnCheckedChanged" HorizontalOptions="EndAndExpand"/> </StackLayout> </ViewCell> </DataTemplate> </ListView.ItemTemplate> </ListView>
Je ne suis pas un grand fan de nuGet à moins qu'il n'y ait pas d'autre choix. Je sais que c'est discutable et peut-être que je me trompe, mais peu importe. Merci pour cette réponse