программно с помощью преобразователя значений в C # в Silverlight - PullRequest
4 голосов
/ 02 февраля 2011

У меня есть приложение на C # Silverlight. В этом приложении я определил конвертер значений, который я использую в XAML. Я столкнулся с ситуацией, когда мне нужно программно использовать этот преобразователь значений в моем коде позади. У меня вопрос, как мне это сделать? В XAML я использую свой конвертер значений следующим образом:

<TextBlock x:Name="myTextBlock" Text="{Binding Mode=OneWay, Path=FirstName, Converter={StaticResource myConverter}, ConverterParameter=NotSet}" />

Как мне использовать этот конвертер в моем коде позади?

Спасибо!

Ответы [ 3 ]

11 голосов
/ 02 февраля 2011

Если вы просто хотите явно вызвать конвертер в коде, просто используйте класс конвертера, как и любой другой класс, и вызовите его методы Convert () с соответствующими параметрами

YourConverter conv = new YourConverter();
conv.Convert(...)
1 голос
/ 09 июля 2018

Я лично добавляю статический метод к конвертеру следующим образом:

public static object Convert(object value)
{
    return new MyConverter().Convert(value, null, null, CultureInfo.CurrentCulture);
}

Затем вы можете использовать это в коде так:

MyConverter.Convert(valueToConvert);

Вы даже можете изменить тип возвратаи приведите результат перед возвратом, чтобы облегчить использование.

0 голосов
/ 02 февраля 2011
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...