Используйте специальные символы в ConverterParameter-Value - PullRequest
9 голосов
/ 31 мая 2011

Есть статья MSDN о специальных символах в WPF / XAML :

Но эти вещи, похоже, не работают в атрибутах XAML:

<MyControl Text={Binding SomeProperty, Converter={StaticResource SomeConverter}, ConverterParameter=Key&#61;Value;/>

Я хочупередать "Key=Value;" в ConverterParameter.

На данный момент я решил проблему следующим образом:

<ItemsControl.ItemsSource>
    <Binding Path="LengthVersionList" Converter="{StaticResource LengthVersionListFilterConverter}">
        <Binding.ConverterParameter>
            <!-- Type=Singular; -->
            Type&#61;Singular;
        </Binding.ConverterParameter>
    </Binding>
</ItemsControl.ItemsSource>

Но 7 строк кода для простого назначения?Есть ли способ сделать это в одной строке?

Редактировать

Хорошо, получил 3 строки:

<ItemsControl.ItemsSource>
    <Binding Path="LengthVersionList" Converter="{StaticResource LengthVersionListFilterConverter}" ConverterParameter="Type&#61;Plural;" />
</ItemsControl.ItemsSource>

Но если бы у кого-то было решение в одну строку, я был бы очень рад.

1 Ответ

10 голосов
/ 06 июня 2011

Вы можете использовать одинарные кавычки вместо двойных:

<ItemsControl ItemsSource="{Binding LengthVersionList, Converter={StaticResource LengthVersionListFilterConverter}, ConverterParameter='Type&#61;Plural;'}" />
...