2010-03-02 16 views
0

Dans notre application, nous permettons aux utilisateurs de tracer des valeurs d'énumération au fil du temps. Nous voulons que les valeurs soient tracées sur l'axe des ordonnées en fonction de leurs valeurs entières. Cependant, nous voulons que l'axe des y soit étiqueté avec des chaînes localisées. Et nous aimerions que l'info-bulle s'affiche lorsque vous passez la souris sur un point tracé pour afficher une chaîne localisée. Je pensais que ce serait "simple" puisque le contrôle graphique représenterait graphiquement toutes les données IComparable. J'ai donc créé une classe EnumValue qui implémente IComparable (basée sur la valeur int) mais qui a une propriété nommée Value (utilisée pour la liaison) qui est de type String.Je veux représenter graphiquement les valeurs d'énumération (par leurs valeurs entières) mais avoir des chaînes affichées dans le contrôle Silverlight Toolkit Chart

Alors j'ai pensé que j'avais été très intelligent et j'ai essayé de représenter graphiquement mes EnumValues. En essayant d'afficher le graphique de EnumValues, on m'a dit que le contrôle Chart ne pouvait pas trouver un axe approprié pour afficher les données. Cela est logique car mes données ne peuvent pas être tracées avec le LinearAxis par défaut. (Je veux dire où est-ce qu'il tracerait la valeur "Off"). Ma question, est-ce un moyen simple de le faire (comme fournir une carte de valeurs int aux chaînes que le tableau utilisera automagiquement), ou devrais-je définir ma propre sous-classe de RangeAxis (ou DisplayAxis) qui dit le tableau comment tracer ces EnumValues.

Je pense que la création de l'EnumAxis ne serait pas trop difficile, mais il n'y a pas beaucoup de documentation sur ce que les méthodes doivent faire. (bien que vous puissiez rassembler beaucoup d'informations en regardant les autres implémentations).

Notez que j'essaie actuellement de le faire avec Silverlight Toolkit Chart Control. Mais j'évalue aussi Telerik et Software FX.

Répondre

0

J'ai réussi à obtenir ce résultat en créant ma propre sous-classe Axis.