【问题标题】:How to bind a WPF control value to a method?如何将 WPF 控件值绑定到方法?
【发布时间】:2011-03-21 16:52:26
【问题描述】:

假设我有一个 TextBox,它的 Text 应该等于机器中正在运行的进程数。

如何在不使用计时器的情况下使其更新?有没有办法使用依赖属性或绑定?

【问题讨论】:

    标签: c# .net wpf binding dependency-properties


    【解决方案1】:

    我不确定这与绑定到方法有什么关系。

    您必须继续在计时器上调用该方法,同样如此。

    您可以将 DataContext 设置为实现 INotifyPropertyChanged 的对象,并使用您想要的数据公开属性(当然,getter 可以调用方法)。

    如果没有计时器,您将需要一个数据对象可以订阅的事件,然后您可以在每次触发事件时发出感兴趣的属性已更改的通知,并且绑定到该属性的 UI 元素将更新。

    【讨论】:

    • 我认为 WPF 会在每次渲染时检查其值,这是周期性的,因此我不必使用计时器,因为无论如何都会定期调用该方法。
    • 不,它不会重新获取数据,除非通过 .BindingExpression(…).UpdateTarget() 明确告知这样做或通知更改(通常通过 INotifyPropertyChanged)。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2012-02-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多