Применить статический стиль ресурса к UIElement, созданному в конвертере - PullRequest
1 голос
/ 07 сентября 2011

Я связываю ItemsSource ItemsControl с Textbox и затем использую конвертер для создания UIElement объектов на основе свойства Text Textbox. У меня также есть статический стиль ресурса, который я хочу применить к элементам, которые я создаю.

Проблема, с которой я столкнулся, заключается в том, чтобы установить стиль элементов, созданных в конвертере, на статический ресурс, поскольку у меня нет доступа к статическим ресурсам в моем классе конвертера.

Ответы [ 2 ]

1 голос
/ 07 сентября 2011

Чтобы использовать StaticResource в Converter, вы можете отправить Style как ConverterParameter.

Если вы уже используете ConverterParameter, вы можете сделать Converter производным от DependencyObject, добавить свойство зависимости и установить его в Style при создании Converter.

Но самое простое решение - использовать DynamicResource вместо этого, если вы знаете ключ ресурса.

Следующий Xaml

<UIElement Style="{DynamicResource styleKey}" />

эквивалентен следующемуКод C #

myUIElement.SetResourceReference(StyleProperty, "styleKey");
0 голосов
/ 07 сентября 2011

Миссия невыполнима!Я думаю, вы можете использовать ConverterParameter в качестве статического ресурса.и все будет хорошо!

...