这有什么错的TextBlock的IsEnabled结合?
-
26-09-2019 - |
题
我有一个标签和文本框为内容简单的文本块。 我想文本块的IsEnabled属性绑定到我的视图模型的属性。无论出于何种原因,标签和文本框住禁用即使IsEnabled属性是适当改变的视图模型。
任何人都知道是怎么回事?
:此不起作用:强>
<TextBlock IsEnabled="{Binding Path=IsEnabledProperty}">
<Label Content="Test"/>
<TextBox Text="blah"/>
</TextBlock>
:该作品就好:强>
<TextBlock>
<Label IsEnabled="{Binding Path=IsEnabledProperty}" Content="Test"/>
<TextBox IsEnabled="{Binding Path=IsEnabledProperty}" Text="blah"/>
</TextBlock>
难道仅仅是一个坏主意,使用TextBlock的这样吗?
解决方案
是的,这是一个坏主意。当放置非字符串对象在文本属性它被用作内容元素,就象是在的FlowDocument,因此不是交互的像正常FrameworkElements。
其他提示
您是否尝试过一个StackPanel呢?
<StackPanel Orientation="Horizontal" IsEnabled="{Binding Path=IsEnabledProperty}">
<Label Content="Test"/>
<TextBox Text="blah"/>
</StackPanel>
是您IsEnabledProperty依赖属性?
您确定您的引发PropertyChanged事件对你的财产IsEnableProperty当你在视图模型更新呢?
不隶属于 StackOverflow