Wpf связать строку с именем свойства - PullRequest
1 голос
/ 05 октября 2011

У меня есть кнопка в динамически загружаемом файле XAML.

<Button Name="{Binding Template_Text1}"
        Width="800" Height="76"
        Content="{Binding Template_Text1}"
        Style="{DynamicResource RoundedButton}"/>

Если я назначу кнопке статическое ИМЯ, все будет хорошо.Итак, как я могу связать строковую переменную со свойством NAME?

Ответы [ 2 ]

2 голосов
/ 05 октября 2011

Помня о ценном вкладе @ Эрно выше, я думаю, что вы можете изменить Имя свойства путем привязки через присоединенное поведение.

   <Button local:NameAnimationBehavior.Name="{Binding Template_Text1}" ... />

И внутри NameAnimationBehavior,в обработчике зависимостей NameProperty изменили свойство отправителя, измените свойство Name отправителя на e.NewValue.

2 голосов
/ 05 октября 2011

Из MSDN :

Имя - это одно из очень немногих свойств зависимостей, которые нельзя анимировать (IsAnimationProjected в метаданных имеет значение true), поскольку само имя жизненно важно длянацеливание на анимацию.Привязка данных к имени технически возможна, но это крайне необычный сценарий, поскольку привязанное к данным имя не может служить основной цели свойства: предоставить точку подключения идентификатора для выделенного кода.

Другими словами: то, что вы делаете, очень сложно, поэтому подумайте еще раз, действительно ли вам это нужно.

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