У меня следующая проблема.
Я хочу разделить строку определенным символом.Это может быть запятая, пробел, табуляция или что-то еще.Я храню этот символ-разделитель в своем свойстве зависимостей Delimiter
.
. В моем коде WPF есть следующий переключатель, который необходимо проверить, принадлежит ли Delimiter
этому переключателю.Это код WPF:
<RadioButton IsChecked="{Binding ElementName=view, Path=Delimiter, Converter={StaticResource MyConverterToCheckForEquality}, ConverterParameter=\t}" Tag="\t" />
Если я проверяю параметр в моем конвертере, значение равно 't'.
Я хотел '\ t', поэтому я попробовал следующие опции:
- \ t
- \\ t
- \\\ t
- '\ t'
- '\\ t'
- '\\\ t'
- & # 92; t
- '& # 92; t'
- {} {\ t}
- '{} {\ t}'
(Примечание: я добавил дополнительные пробелы и обратную косую черту, чтобы отобразить его здесь правильно).
Результат очень печальный ... Тройная и двойная обратная косая чертадает мне двойную обратную косую черту, Single не дает мне ни одного.& # 92;также дает мне нулевую обратную косую черту.
Возможно, самое расстраивающее, что когда я использую свойство Tag для установки разделителя, \ t просто отлично работает и не лишний экранированный в процессе ...
Может кто-нибудь объяснить, почему это происходит, почему ни один из этих параметров не работает и как это исправить?
ОБНОВЛЕНИЕ
Когда я использую мультисвязывание в мультидатригере, результат отличается:
<Binding ElementName="view" Path="Delimiter" Converter="{StaticResource MyConverterToCheckForEquality}" ConverterParameter="\\\t" />
Значение параметра в моем преобразователе теперь равно '\\\\\\ t', однако я все еще не могу заставить его работать.
Я могу заменить значение, но это будетЯ имею в виду, что я должен использовать другую переменную в моем коде позади файла, что было бы довольно уродливо.Я думаю, что другого решения не существует.