Текстовое поле привязки ленты IsEnabled к флажку IsChecked не работает - PullRequest
1 голос
/ 03 февраля 2012

Вот пример XAML:

...
<ribbon:RibbonTab Header="MyTab">
  <ribbon:RibbonGroup Header="Blah">
    <ribbon:RibbonTextBox x:Name="MyTextBox" 
                          IsEnabled="{Binding IsChecked, ElementName=MyCheckBox}" />
    <ribbon:RibbonCheckBox x:Name="MyCheckBox" Label="some text" />
  </ribbon:RibbonGroup>
</ribbon:RibbonTab>
...

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

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

Обновление : если вместо RibbonTextBox подставляется обычный TextBox, поведение становится правильным.Я пришел к выводу, что должна быть некоторая проблема с привязкой свойства IsEnabled RibbonTextBox.

Странное обновление # 2 : создание базового RibbonTextBox и установка его свойства IsEnabled вTrue создает отключенный RibbonTextBox.Что дает?

Я отправил отчет об ошибке в Microsoft Connect для дальнейшего решения этой проблемы.

Окончательное обновление : исправлено исправленов WPF 4.5 .

1 Ответ

0 голосов
/ 05 февраля 2012

Как дикое предположение, вы пытались полностью квалифицировать свойство?

IsEnabled="{Binding RibbonCheckBox.IsChecked, ElementName=MyCheckBox}" 

... или, может быть, даже ...

IsEnabled="{Binding CheckBox.IsChecked, ElementName=MyCheckBox}" 
...