‫Content de te revoir.
‫Et cette vidéo, nous allons parler des propriétés de dépendance, et elles sont très importantes dès que nous
‫arrivons à la liaison de données.
‫Et généralement, il est logique que vous compreniez comment ils fonctionnent.
‫Alors allons-y et créons un bouton dans notre grille.
‫Et nous le faisons simplement en créant le mot-clé button, comme nous l'avons déjà vu plusieurs fois.
‫Et ici, je vais juste attribuer une hauteur de, disons, cent pixels et une largeur
‫de deux cents pixels, puis le contenu de click me.
‫Et maintenant, je veux utiliser quelque chose appelé arrière-plan.
‫Il y a donc une propriété appelée background et je veux l'attribuer à un égout, d'accord ?
‫Sûr.
‫Alors ça va être mon bouton.
‫Et comme vous pouvez le voir maintenant, il a juste une sorte de couleur.
‫Peut-être devrions-nous le rendre rouge.
‫Comme le rouge est assez fort.
‫Violet pâle, rouge.
‫Ça à l'air bon.
‫Donc une couleur simple.
‫Donc, l'idée derrière cela est que je veux aller de l'avant et vous expliquer ce que sont les propriétés de dépendance, où
‫elles se trouvent et comment créer vos propres propriétés de dépendance.
‫Et c'est assez facile de le faire avec un bouton, je dirais.
‫Et au fait, ce bouton et en fait je vais le fermer comme ça parce que je veux styliser ce bouton.
‫Donc, dans les balises de bouton, je veux ajouter un peu plus de style à ce bouton.
‫Et le style doit être un déclencheur.
‫Alors je veux déclencher.
‫Donc, si j'entre dans la zone des boutons, je veux changer la couleur ou quelque chose comme ça.
‫Je vais donc utiliser un style de point de bouton.
‫Maintenant, ce style de bouton a besoin d'un style ici pour que je puisse créer notre propre style ici et je vais définir une
‫cible pour ce type de cible de style.
‫Ça va être bouton.
‫Maintenant, ce n'est pas suffisant car ce que je veux maintenant faire, c'est ajouter un déclencheur à ce style.
‫Je vais donc utiliser des déclencheurs de style.
‫Comme celui-ci, et maintenant je peux aller de l'avant et créer de beaux petits déclencheurs qui seront déclenchés une fois qu'un événement se produit et que
‫nous avons déjà vu des événements, mais c'est un événement un peu différent.
‫C'est donc un déclencheur que nous pouvons utiliser comme suit.
‫Nous pouvons créer un déclencheur ici et ce déclencheur aura une propriété.
‫Et celui-ci est, par exemple, survolé par la souris.
‫Ainsi, une fois que la souris est sur ce bouton, la valeur doit être définie sur true.
‫Et dans ce déclencheur, j'ai besoin d'avoir Setas alors.
‫Alors que se passera-t-il si c'est le cas ?
‫Donc, ce que je vais faire, c'est définir la taille de la police de propriété sur la valeur trente, car maintenant la taille de la police est beaucoup
‫plus petite.
‫Nous avons donc ici le bouton, qui a une largeur spécifique, un contenu et une largeur et tout ce genre de
‫choses.
‫Et j'ai fait un pilote qui payload rouge violent et ensuite j'ai ajouté un style à ce bouton.
‫Et ce style que j'ai ajouté est en fait un déclencheur.
‫Donc, je peux, il y a quelque chose appelé déclencheurs de style, qui déclenchera un changement de style.
‫Et c'est le déclencheur est exécuté une fois que la souris est sur ce bouton et cela va régler les choses.
‫Donc, ce qu'il fera, c'est qu'il définira la taille de la police sur les valeurs que nous avons spécifiées
‫ici et maintenant, nous attribuons ici cette valeur true signifie qu'elle sera déclenchée lorsqu'une fois le passage de la souris effectué, la valeur est vraie.
‫Et c'est vrai une fois que nous survolons notre souris ou une fois que nous sommes Moïse sur le bouton.
‫Donc, si nous exécutons cela, nous devrions voir des changements.
‫Et c'est une approche assez longue pour avoir juste une fonctionnalité de survol, mais c'est beaucoup plus que nous
‫voulons utiliser ici.
‫Alors vous voyez, je survole et la couleur change en cette couleur bleuâtre et puis nous avons ce texte qui apparaît alors
‫plus gros.
‫La valeur passe donc à 30.
‫Alors c'est super et tout.
‫Mais pourquoi avons-nous besoin d'un si long code ?
‫Eh bien, le fait est que nous utilisons des propriétés ici.
‫Comme vous pouvez le voir, cette chose est appelée propriété.
‫Et en fait, la largeur est une propriété, le contenu est une propriété, l'arrière-plan est une propriété.
‫Et ils dépendent des propriétés de dépendance ou ils sont connectés à des propriétés de dépendance et ils sont importants
‫pour l'exploration de données.
‫Comme je l'ai dit, ce que nous couvrirons dans la prochaine vidéo ou l'une des prochaines vidéos.
‫Mais il est également important d'avoir cet événement déclencheur ou que le bouton soit conscient de ce qui se
‫passe.
‫Alors allons-y et créons un bouton à l'intérieur de notre méthode de fenêtre principale.
‫Je vais juste créer un bouton.
‫Et maintenant, je veux vérifier la classe elle-même.
‫Allez donc à la définition afin que vous puissiez simplement appuyer sur F 12 pour accéder à la définition.
‫Ce que cela fera, c'est qu'il me montrera la classe du bouton.
‫Et comme vous pouvez le voir, c'est une classe qui hérite de la base de boutons.
‫Il existe une propriété de dépendance statique en lecture seule, qui est par défaut, la propriété est annulée, la propriété a une
‫propriété par défaut.
‫Donc pas trop.
‫Mais ce que vous pouvez également voir, c'est qu'il y a en fait une propriété normale ici.
‫C'est donc un SCEAU.
‫Notre propriété que nous avons ici, qui s'appelle cette valeur par défaut, est annulée et est
‫par défaut et celles-ci sont connectées à ces propriétés de dépendance.
‫Il représente donc une propriété qui peut être définie via des méthodes telles que la mosaïque, l'animation de liaison
‫de données et l'héritage.
‫Donc, comme je l'ai dit, l'exploration de données est quelque chose que nous aborderons plus tard dans le style.
‫C'est bon.
‫Mais nous venons juste de styliser notre bouton et nous pouvons utiliser l'animation et l'héritage pour cela.
‫Mais maintenant, examinons plus en détail la base du bouton afin que nous sachions que le bouton hérite de la base du
‫bouton.
‫Ensuite, nous pouvons passer à la définition de la base du bouton et vérifier.
‫D'accord.
‫C'est une classe de contrôle de contenu.
‫Ainsi, la base du bouton hérite du contrôle de contenu, qui, eh bien, la base du bouton a un événement routé, comme vous pouvez le
‫voir ici, cliquez sur l'événement.
‫Et nous avons vu la dernière fois que l'événement DOT est inclus et qu'il possède également de nombreuses propriétés
‫de dépendance, telles que le mode clic enfoncé, la commande de propriété, la cible, etc.
‫Mais nous n'avons pas encore touché à certains d'entre eux.
‫Mais ce qui est encore plus intéressant, si nous allons encore plus loin dans le contrôle du contenu, nous pouvons
‫voir qu'il existe une propriété qui dit a du contenu.
‫Celui-ci s'occupe donc de tout le contenu du bouton.
‫Par exemple, le texte est un bloc de texte dans notre bouton.
‫Donc, si nous avons du contenu dans notre bouton, alors.
‫Il est géré par cette classe ou par cette classe de contrôle de contenu, et en fait, nous pouvons aller encore plus
‫loin, aller à la définition, et nous trouverons ici de nombreuses propriétés de dépendance et des événements racine.
‫Et cette classe de contrôle a des propriétés de dépendance appelées puting property, puis water brush.
‫Donc la couleur de l'eau, puis un alignement vertical du contenu, un alignement horizontal du contenu.
‫Et maintenant ici celui-ci est intéressant pour nous parce que nous l'avons utilisé.
‫C'est une propriété d'arrière-plan et c'est exactement celle que nous avons définie dans notre fichier Zemo.
‫Comme vous pouvez le voir ici, nous avons dit l'arrière-plan au rouge violet pâle afin que nous puissions accéder à ces propriétés de
‫dépendance via nos propriétés ici.
‫Ce sont donc nos propriétés comme la taille de la police, la police, l'arrière-plan de la famille, le premier plan, tout ce
‫genre de choses que nous utilisons lorsque nous travaillons avec des contrôles et un bouton, par exemple, en tant que contrôle ou bloc de
‫texte, c'est aussi un contrôle.
‫Donc, ils héritent tous de cette classe de contrôle et ils ont tous ces propriétés de
‫dépendance qui déclenchent et informent ensuite des changements.
‫Donc ici, nous voyons aussi qu'il y a quelque chose d'important à propos des propriétés de dépendance, et c'est qu'elles sont toujours statiques
‫et qu'elles sont en lecture seule.
‫C'est donc très important.
‫De plus, ce que vous pouvez voir, c'est qu'ils se terminent toujours par le nom de la propriété.
‫Donc ici, chaque fois que nous définissons une propriété de dépendance, nous disons background, qui est le même nom que
‫la propriété elle-même.
‫Alors ici, par exemple, où est-il ?
‫Il y a le fond, mais aussi le terme propriété à la fin.
‫Donc très longue histoire.
‫Et nous avons creusé très profondément.
‫Mais ensuite, nous vous montrerons un peu plus quelles sont ces propriétés de dépendance et avec quoi nous travaillons tout
‫le temps.
‫Nous jouons donc avec les propriétés, mais elles fonctionnent en fait avec les propriétés de dépendance.
‫Pourquoi avons-nous besoin de tout cela ?
‫Eh bien, juste pour comprendre ce qui se passe ici avec ce déclencheur, YPF utilise une propriété de dépendance
‫ici.
‫Ainsi, par exemple, il s'agit de mouseover et mouseover fournit une notification en chaîne à WPX à l'aide de
‫propriétés de dépendance, ce qui nous permet de définir la valeur sur through.
‫Et puis aussi si tu regardes, parce que c'est quelque chose que je n'ai pas touché.
‫C'est en fait le mot erreur de construction.
‫Nous devons donc nous débarrasser de ce bouton ici.
‫Mais nous n'avons pas encore couvert ou abordé ce qui est assez important comme suit.
‫Vous pouvez donc voir que nous avons ce déclencheur et il indique que la propriété est la valeur de survol de la souris.
‫Vrai.
‫Et il se déclenchera une fois que ce sera fini, que fera-t-il ?
‫Eh bien, il définira des propriétés telles que la taille de la police sur trente.
‫Et laissez-moi vous montrer à nouveau, OK, je le vois.
‫Mais maintenant, si je laisse le bouton, vous pouvez voir comment cela revient et cela est fait par cette propriété de
‫dépendance.
‫Il informe donc sur ce qui se passe et se vend, en rétablissant la valeur de la taille de la police à
‫sa valeur d'origine.
‫Donc, comme vous pouvez le voir, ce n'est vrai que lorsque la souris est survolée et cela est possible grâce aux propriétés de dépendance.
‫Maintenant, une autre chose à propos des propriétés de dépendance, parce que j'ai dit qu'elles devraient toujours être statiques et
‫en lecture seule, et c'est parce que tous les contrôles devraient être partagés et disponibles.
‫Vous ne voulez donc pas qu'un contrôle ne soit disponible qu'une seule fois.
‫Vous souhaitez également qu'il soit disponible pour d'autres classes et d'autres vues, etc.
‫Et c'est statique car la valeur ne doit pas être modifiée après l'initialisation.
‫Et cette notification de chaîne, le déclencheur de propriétés de dépendance est requis pour l'exploration de données, pour l'animation, pour les
‫déclencheurs, comme nous l'avons vu ici, pour le style, etc.
‫Maintenant, si vous voulez aller de l'avant et créer votre propre propriété de dépendance, vous pouvez le faire sur une longue distance.
‫Je vais donc créer une nouvelle propriété dans cette classe ici.
‫Je vais l'appeler, en fait, mettons-le en haut.
‫Je vais l'appeler public et ma propriété.
‫Et comme je l'ai dit, il s'agit d'une propriété C LR.
‫Et ici, j'aurai besoin d'un get et d'un set.
‫Mais cela ne suffira pas.
‫Je vais juste à ceux de la seconde.
‫Créons une propriété de dépendance pour cette propriété.
‫Je vais donc créer une
‫propriété de dépendance statique publique en lecture seule appelée ma propriété de dépendance propriété de dépendance.
‫Et celui-ci doit être initialisé immédiatement avec le registre de points de propriété de dépendance.
‫Nous enregistrons donc une nouvelle propriété de dépendance et nous devons affecter plusieurs choses.
‫Par exemple, nous devons avoir un nom de chaîne.
‫Je vais juste l'appeler.
‫Ma propriété, alors nous avons besoin d'un type de propriété, alors de quel type cette propriété devrait-elle être ?
‫Et comme nous l'avons vu ici, la propriété qui est ma propriété est de type.
‫Je vais donc utiliser le type de type d'int ensuite.
‫Nous devons taper propriétaire.
‫Donc propriétaire du type et propriétaire de ce type de ma propriété est ma classe de fenêtre principale parce que, eh bien, c'est dans
‫la classe principale sans classe.
‫Donc, nous disons simplement que le type de va être la fenêtre principale et maintenant nous devons également remettre les métadonnées de la propriété.
‫Je vais donc créer une nouvelle métadonnée de propriété, qui sera nulle.
‫Je vais donc juste entrer zéro ici.
‫Rien d'extraordinaire là-bas et c'est tout.
‫C'est ainsi que nous pouvons créer une propriété de dépendance.
‫Et maintenant, ma propriété elle-même devrait également être influencée par cette propriété de dépendance, bien sûr.
‫Et pour ce faire, je dois aller de l'avant et ajuster le get and set.
‫Geter doit donc être renvoyé à notre valeur d'obtention, ma propriété de dépendance.
‫Mais maintenant, nous avons ce problème que la valeur de la propriété de dépendance est de type propriété de dépendance.
‫Et même si nous avons dit qu'il est de type int, nous devons toujours le transposer pour y être.
‫Je vais donc le convertir en un entier et maintenant nous pouvons continuer et nous rapprocher de la dispersion à travers
‫l'instruction.
‫Droit.
‫Mieux dit.
‫Et maintenant, le setter doit être mis en valeur.
‫Et ici, j'ai défini ma propriété de dépendance sur la valeur qui a été donnée.
‫C'est donc ce que nous faisons ici et c'est ainsi que vous pouvez créer votre propre propriété de dépendance.
‫C'est donc ce qui est important.
‫En lecture seule statique, vous devez le créer en tant que type de propriété de dépendance.
‫Vous pouvez lui donner un nom, puis vous devez l'enregistrer et vous devez lui donner un nom, un type.
‫Et où se trouve le propriétaire ou quels sont les propriétaires de la catégorie dans laquelle la propriété a été créée.
‫Et puis vous devez remettre certaines métadonnées de propriété afin que vous puissiez ajouter des métadonnées de propriété supplémentaires.
‫Comme vous pouvez le voir, il y a quatre suzerains différents, et vous pouvez remettre un objet, qui
‫est la valeur par défaut, et je dis juste, OK, la valeur par défaut zéro.
‫Ma propriété va donc être mise à zéro par défaut à cause des métadonnées de ma propriété que j'ai configurées ici.
‫Tout va bien.
‫Donc plein de trucs ici.
‫Et selon ce que vous allez développer, vous pourriez ne jamais créer votre propre propriété de dépendance.
‫Donc pas de soucis.
‫Si, à un moment donné, vous devez utiliser des propriétés de dépendance, découvrez simplement comment créer les vôtres.
‫Sinon, vous pouvez simplement utiliser les propriétés que nous avions ici.
‫Et pour un utilisateur final ou disons pour un développeur qui ne fait que créer l'interface utilisateur et cela ne sera pas si
‫pertinent.
‫Mais je voulais juste vous montrer comment les choses se construisent et ce qui est important ici.
‫D'accord.
‫Alors rendez-vous dans la prochaine vidéo.