2015-12-20 2 views
-1

J'essaie de convertir simplement string et ajouter des balises string par exemple:WPF: Got Impossible de lancer exception d'objets lorsque vous essayez de convertir

Value is: bla bla 

dans: Value is <Span Foreground="Red">bla bla</Span>

donc je veux utiliser MultiValueConverter et ajouter convertisseur simple (jusqu'à présent sans aucune mise en œuvre):

public class StatusConverter : IMultiValueConverter 
{ 
    public object Convert(object[] values, Type targetType, object parameter, System.Globalization.CultureInfo culture) 
    { 
     throw new NotImplementedException(); 
    } 

    public object[] ConvertBack(object value, Type[] targetTypes, object parameter, System.Globalization.CultureInfo culture) 
    { 
     throw new NotImplementedException(); 
    } 
} 

Window.Resources:

<my:StatusConverter x:Key="StatusConverterToColor"/> 

Utilisation:

<TextBlock Text="{Binding Status, Converter={StaticResource StatusConverterToColor}}" /> 

mais nous avons eu cette erreur:

{"Unable to cast object of type 'MyApplication.classes.StatusConverter' to type 'System.Windows.Data.IValueConverter'."}

Qu'est-ce que je fais mal?

Répondre

1

Remplacez IMultiValueConverter par IValueConverter. Déclaration devrait être

public class StatusConverter : IValueConverter 
{ ... } 
+0

Et avec IValueConverter je serai en mesure de changer ma chaîne et ajouter ce balisage? –

+0

Oui, il devrait, dès que prévu implémentation réelle dans la méthode 'Convert' au lieu de lancer' NotImplementedException' – Eldar