Установка значения конвертера в ноль - PullRequest
0 голосов
/ 13 сентября 2011

У меня есть общая функция для привязки с параметром преобразователя. Когда мне не нужен конвертер, я хочу передать значение NULL, но он не позволяет мне сказать:

Cannot set MultiBinding because MultiValueConverter must be specified.

Прежде чем назначить его в функцию, я проверяю, был ли преобразователь нулевым, но я предполагаю, что проблема в том, что IMultiValueConverter не принимает нулевое значение в качестве значения.

Есть ли способ достичь этого, не создавая конвертер, который просто возвращает ввод, или перегруженный метод?

protected MultiBinding CreateBinding(object source, IMultiValueConverter converter, object parameter, object [] dps)
    {
        MultiBinding multiBinding = new MultiBinding();
        if ( converter != null )
        multiBinding.Converter = converter;
        multiBinding.ConverterParameter = parameter; 
        .....

Другими словами, я хочу смоделировать прямую привязку свойства без конвертера, используя функцию выше.

1 Ответ

0 голосов
/ 13 сентября 2011

MultiBindings имеет смысл только в том случае, если вы указываете MultiValueConverter или StringFormat для определения того, как вывод рассчитывается на основе каждого источника.

Я не уверен в том, что вы пытаетесь достичь, но если выукажите пустой StringFormat (string.Empty), вы не должны получать ошибок, но он ничего не сделает во время выполнения.

...