【问题标题】:Silverlight databinding a textBlock in another user controlSilverlight 数据绑定另一个用户控件中的 textBlock
【发布时间】:2009-04-01 14:58:13
【问题描述】:

我有一个小的用户控件,它基本上将一个值递增或递减一。用户控件有两个按钮(一个用于添加,另一个用于减去)和一个用于显示值的 textBlock。

我将在另一个用户控件中拥有此用户控件的多个实例,以便我可以操作具有 INotifyPropertyChanged 接口的数据类的值。我的问题是如何将值更改用户控件的 textBlock 数据绑定到我实例化它的用户控件?

【问题讨论】:

    标签: silverlight data-binding


    【解决方案1】:

    首先,我想声明 Silverlight 2 不支持元素到元素的绑定。 Silverlight 3 中添加了该功能(现已推出 Beta 版)。话虽如此,我认为您无论如何都不想将控件绑定在一起。听起来您正在尝试构建一个 NumericUpDown 控件,并且您可能在代码后面有一些类实际上正在执行递增和递减。

    如果是这种情况,您可以简单地订阅点击处理程序并调用模型上的方法,例如 Increment 或 Decrement。您的模型可以为当前值公开一个属性,并且该属性是绑定到您的文本框的。

    现在,如果您实际上是在尝试构建 NumericUpDown 控件,您可能需要查看 Silverlight 工具包。该工具包已经包含了这个控件,并且还支持数据绑定。

    查看 NumericUpDown 控件here 并下载工具包here

    最后,从子控件绑定到父控件实际上并没有什么不同。父 UserControl 有一个 DataContext 并且所有子控件都继承它。每个单独的子控件也可以有其 DataContext 集。绑定表达式始终与 DataContext 相关,并且可以在代码中设置 DataContext。在你的情况下,可能是某种模型。

    希望对你有帮助。

    【讨论】:

      猜你喜欢
      • 2010-10-16
      • 2013-03-30
      • 2010-12-06
      • 2023-03-24
      • 2017-11-13
      • 2010-12-20
      • 2010-11-18
      • 1970-01-01
      • 2011-02-03
      相关资源
      最近更新 更多