StringFormat et Multibinding avec Étiquette
Je voudrais utiliser StringFormat à faire quelque chose comme ceci :
<Label x:Name="myLabel">
<Label.Content>
<Multibinding StringFormat="{}{0} - {1}">
<Binding Path="Lib1" />
<Binding Path="Lib2" />
</MultiBinding>
</Label.Content>
</Label>
Toutefois, il ne fonctionne pas et j'ai eu cette erreur à la place :
MultiBinding a échoué car il n'a pas valable Convertisseur. MultiBindingExpression:élément cible est "Label" (Nom='myLabel'); cible de propriété est "Content" (de type 'Object')
Est-il un moyen de rendre ce code fonctionne ?
Vous devez vous connecter pour publier un commentaire.
Vous ne pouvez pas lier ce que vous essayez de lier une chaîne de caractères à un objet qui ne fonctionnent pas parce que StringFormat exige sa cible à un type de chaîne. Vous pouvez contourner ce problème en utilisant un TextBlock à la place (qui a une propriété de Texte) ou de mettre le Textblock comme l'enfant de l'Étiquette:
TextBlock
.Pour ceux qui se demandent, vous pouvez également laisser la
<Label.Content>
balise de Leom Burke réponse. Cela fait gagner deux lignes de code.Où
Resources.MyText
peut contenir quelque chose comme "le Renard saute par-dessus {0}."