这是示例 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 功能区项目中,看看您是否能找出问题所在。例如,我看不到绑定错误诊断。
更新:如果用常规TextBox
替换RibbonTextBox
,则行为正确。我的结论是,绑定 a 的 IsEnabled 属性一定存在一些问题RibbonTextBox
。
奇怪的更新 #2:创建一个基本RibbonTextBox
并将其IsEnabled
属性设置为True
创建一个禁用的 RibbonTextBox。是什么赋予了?
我已提交有关 Microsoft Connect 的错误报告以进一步解决此问题。
最终更新:已在 WPF 4.5 中修复。