3 Réponses :
Vous avez ignoré Prenez toujours en compte les informations de culture ont été transmises autrement, il fonctionnerait toujours sur la courroie courante du fil. P>
Je pourrais donner quelque chose comme "7,34,123" comme entrée, votre code fonctionnerait-il? P> cultureinfo code> lors de l'analyse de la chaîne. p>
Si vous échouez de convertir (valeurs mal formées, types, ...), renvoyez dépendanceProperty.unsetvalue . P>
Il indique que le convertisseur n'a produit aucune valeur et que la liaison utilise la fallbackValue, si disponible ou la valeur par défaut. P>
En outre, vous devez convertir des données avec une conversion spécifique à la culture ou des conversions invariantes pour être du côté sûr. P>
Dois-je retourner string.empty?
renvoie dépendanceProperty.unsetvalue; code> Il existe d'autres valeurs de retour que vous pouvez modifier le comportement du moteur de liaison avec. Vous pouvez suivre le lien que j'ai fourni dans ma réponse pour en savoir plus. Voici un échantillon d'utilisation de dépendanceProperty.unsetvalue code>: msdn.microsoft.com/en-us/library/...
Par Ce lien , vous pouvez Utilisez liaison.donothing code> si la liaison ne doit pas définir une valeur particulière. Cela devrait être plus utilisé dans des problèmes tels que mulvenuesconverters.
Je recommande personnellement à l'aide de convertisseurs singleton. Ensuite, vous n'avez pas besoin de créer une instance à chaque site d'utilisation, mais vous pouvez référencer le convertisseur comme celui-ci:
Converter={x:Static SomeNamespace:SomeConverter.Instance}
Quelles sont les meilleures pratiques pour Igueconverter?
@Amit: mieux tirer ce commentaire sur les exceptions au texte avant.
J'ai ajouté des commentaires dans le code! "Est-ce que ça va de mettre une exception ici ou devrais-je retourner" quelque chose "ici?"
Question connexe: Combien de temps dure un morceau de chaîne?
Est-ce que cela répond à votre question? Meilleure pratique lors de la mise en œuvre d'Igueconvert.Convertback