在DataContext更改时将DependencyProperty推回到ViewModel

我不知道我写的内容是否有某种设计缺陷,但是我现在正在尝试使用的方法有点卡住了。

我在我的ViewModel中有一个案例,我想根据用户控件的当前状态对某些值进行限制。 为此,我需要绑定到该控件上的属性,并确保ViewModel始终知道其当前状态。

在一个例子中,这很好。 如果控件上的值发生变化,View的DependencyProperty说,嘿,我改变了。 数据被推送到我的ViewModel。 辉煌!

当我的ViewModel被切换出来时,问题就出现了,视图也没有改变。 一个很好的例子就是视图的ActualWidth和ActualHeight。 在ViewModel开关(有效地删除旧的,并重新实现一个新的)。 DependencyPropertys不会改变。 因此,我的新视图模型从不接收视图的数据。

这意味着我的控件必须知道它的ViewModel何时改变。 对?

如果这一切都合情合理,我该如何将新价值“推”到我的视图模型中。 即使他们没有改变?

链接地址: http://www.djcxy.com/p/50471.html

上一篇: Push DependencyProperty back to ViewModel upon DataContext Change

下一篇: Binding a WPF read only view to a viewmodel