2015-12-20 4 views
-1

Я пытаюсь преобразовать простой string и добавлять разметку string, например:WPF: Есть Невозможно бросить исключение объекта при попытке преобразовать

Value is: bla bla 

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

Так я хочу использовать MultiValueConverter и добавить простой конвертер (до сих пор без каких-либо реализации):

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"/> 

Использование:

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

Но получил эту ошибку:

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

Что я делаю не так?

ответ

1

Изменить IMultiValueConverterIValueConverter. Декларация должна быть

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

И с IValueConverter я смогу изменить свою строку и добавить эту разметку? –

+0

Да, это необходимо, как только обеспечивается реальная реализация внутри метода 'Convert' вместо того, чтобы бросать' NotImplementedException' – Eldar

Смежные вопросы