data-binding - 绑定(bind)到不同的 dataContexts

标签 data-binding windows-phone-7 mvvm

Windows Phone 应用程序 (Silverlight 3)

我有一个文本 block

<TextBlock Text="{Binding Key}"  FontSize="40" Foreground="{Binding propertyOnAMainViewModel}" />

TextBlock 的 DataContext 设置为类 Group 实例,该实例公开 Key 属性。

我需要将 TextBlock 的前景属性绑定(bind)到动态(可从代码设置)属性,但在不同的 ViewModel 上,而不是在 Group 上。

是否可以将一个元素上的不同属性绑定(bind)到不同的数据上下文?

最佳答案

你可以这样做,但它不是非常优雅!每个绑定(bind)都有一个 Source,如果未指定,则为控件的 DataContext .如果在代码隐藏中构造绑定(bind),则可以显式设置源。在 XAML 中,您的唯一选项是默认选项(即 DataContext)或 ElementName绑定(bind)。

我要做的是创建一个 ViewModel,它公开您希望绑定(bind)到的两个属性,并将其用作您的 DataContext .

关于data-binding - 绑定(bind)到不同的 dataContexts,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7243782/

相关文章:

c# - GridView 数据绑定(bind)

xml - Delphi:XML 数据绑定(bind)(编码)

java - 自定义可观察集合android

javascript - 从 AngularJS 中的指令添加指令

wpf - WPF中带有MVVM的ICommand

C#:AmbigeousMatchException:发现不明确的匹配

c# - 我必须在我的 WPF 数据绑定(bind)中更改什么才能让列表框显示项目?

windows-phone-7 - 如何更新 Mango 动态磁贴时间表中的 BackContent?

c# - 是否可以向上抛出异常

c# - 尝试读取或写入 protected 内存。这通常表明其他内存已损坏。在 Windows Phone 8 中