0
votes

Le texte de la étiquette de liaison à une variable de Xamarin formes C #

Donc, j'essaie de créer une simple application comme une application de shopping. J'ai donc des catégories et plusieurs articles pour chaque catégorie, et lorsque vous choisissez un élément, vous aurez la possibilité d'augmenter le nombre de personnes dont vous avez besoin ou supprimez l'élément. Pour un exemple, j'ai choisi trois articles, mon panier dispose donc de 3 éléments où chacun a un bouton Ajout et un bouton Supprimer. Lorsque j'ai appuyé sur le bouton Ajouter, le nombre d'éléments indiqués devrait augmenter et ainsi de suite.

Alors, ce que j'ai fait jusqu'à présent, c'est créer un fichier JSON qui disposant de toutes mes catégories, et une fois que j'ai frappé une catégorie, je reçois de désérialiser un autre fichier JSON qui possède tous mes articles, de sorte que les éléments affichés dépend de la catégorie I Chôté bien sûr.

Maintenant, chaque fois que je choisis un élément, il est ajouté au panier et affiché sur la page inférieure avec des boutons + et - et ainsi de suite.

Alors j'ai créé une classe de catégorie pour désérialiser mon Json et une classe Objets pour désérialiser le JSON de mon article. J'ai implémenté l'inotifyChangedProperty dans la classe Objets afin que je puisse garder le spectacle à chaque fois que le nombre d'un élément choisi augmente, de sorte que mon point de vue, mais je suppose que c'est comme ça que j'ai besoin d'un point de vue de chaque article créé? Donc, je suppose que ce que j'ai vraiment besoin d'utiliser est l'observablecollection ..

J'espère que j'ai bien expliqué bien et j'attends vos commentaires sur si je le fais bien ou mal et comment dois-je procéder pour obtenir ce que je veux. merci beaucoup


6 commentaires

Ceci est bien documenté - avez-vous lu les docs sur la liaison? docs.microsoft.com/ EN-US / XAMARIN / XAMARIN-FORMES / XAML / XAML-BAS ICS / ...


@ Shahid, si vous voulez lier la variable à label.text, lorsque la variable est modifiée, le label.text changera, vous devez implémenter INOTIFYPROPERTYCHANGED interface . Vous pouvez regarder un look: xamarinhelp.com/xamarin-forms-binding


@shahid utilisez-vous XAML ou .Cs codant pour la conception? Dois-je fournir xaml? Mais c'est la chose très fondamentale pour Xamarin que vous pouvez utiliser avec la documentation.


@Jason je veux le faire avec C #, je n'ai pas trouvé quelque chose qui fonctionne pour moi. et oui j'ai fait


@ Cherrybu-msft qui est exact que je vais essayer de le mettre en œuvre avec l'exemple que vous me fournissez et vous donnera une alimentation. Merci beaucoup


@Kishore je sais déjà comment le faire dans le XAML, je le fais en ce moment je le fais dans les .Cs, j'ai juste besoin d'utiliser inotifypropertychangned mais je cherchais ici un exemple de comment l'utiliser Je vous remercie correctement.


3 Réponses :



0
votes

Voici quelques conseils qui pourraient aider avec votre problème. Votre code est en désordre et je pense que cela provoque votre confusion (vous avez plusieurs choses nommées de manière très similaire). XXX

Cela me montre que vous définissez votre variable de membre NBR_OBJET Directement, lorsque vous faites que la notification de changement de propriété ne génère pas - vous devez attribuer la valeur via le public nbr_objet pour que cela se produise.

Je vous suggère Définissez la liaison dans XAML et assurez-vous de vous lier à la propriété nbr_objet , pas la variable de membre privé (champ) nbr_objet . Si vous souhaitez éviter la confusion, suivez la norme de codage C # et nommez votre variable de membre _nbrobjet et Case de chameau Votre nom de propriété public int nbrobjet {obtenez {... . < / p>


3 commentaires

Merci beaucoup, mais le problème que j'ai consiste à mettre en place le contexte contraignant, comment puis-je la définir dans XAML?


@Shahidod pouvez-vous publier ce que vous avez jusqu'à présent? Vous pouvez supprimer tout ce qui n'est pas pertinent, mais essayez d'inclure le niveau de page / composant XAML, plus l'étiquette.


Je vais éditer ma question à nouveau pour que vous puissiez voir ce que je tente de faire, peut-être que je le fais mal.