【发布时间】:2009-12-29 22:22:57
【问题描述】:
如果我的 ViewModel 中的 DependencyProperty 设置为 Visiblity.Hidden,我有一个 TextBlock(实际上是一大堆 TextBlock),我将 Text 设置为“”。我通过转换器执行此操作,如下所示:
<TextBlock Margin="0,0,5,0">
<TextBlock.Text>
<Binding Converter="{StaticResource GetVisibilityOfColumnTitles}"
Path="Name" />
</TextBlock.Text>
</TextBlock>
转换器如下所示:
public object Convert(object value, Type targetType,
object parameter,System.Globalization.CultureInfo culture)
{
if (MainMediator.Instance.VisibilityOfWorkItemColumnTitles
== Visibility.Visible)
return value;
else
return "";
}
我承认这样做有点复杂,但我有我的理由(DataContext 复杂性和 TextBlock 的间距)
我遇到的问题是,当 VisibilityOfWorkItemColumnTitles 更改时,即使它是依赖属性,TextBlock.Text 也没有意识到那里存在依赖(因为它在转换器中使用)。
在后面的代码中(最好在转换器中)有没有办法说,这个 TextBlock 想要在 VisibilityOfWorkItemColumnTitles 发生变化时更新这个绑定?
【问题讨论】:
标签: wpf data-binding binding