2017-07-07 52 views
0

到目前为止,我只使用了Caliburn.Micro Framework的基本功能。但是现在我想要并需要深入其中。如何使用Caliburn.Micro访问ViewModel中的View-Propperties

现在我有这种情况,我需要访问其视图模型中的视图(窗口)的属性。

详细信息如下: 我使用Microsoft的Window-Chrome(NuGet-Package:Microsoft.Windows.Chrome)自定义shell窗口。 现在我需要检查窗口的WindowState-Property的值,以正确设置绑定到其ResizeBorderThickness属性的属性。

我该如何使用Caliburn.Micro Framework?

其他信息: .NET Framework:4.5; Caliburn.Micro:3.1.0

回答

0

您不直接访问视图模型中的视图属性。这有效地打破了MVVM模式以及它的全部内容。视图模型不应该依赖于视图。

您可以做的是将窗口的WindowState属性绑定到您的视图模型的bool?源属性,然后在后者的setter中执行任何逻辑。

+0

你能提供一个示例代码吗? – ZaHaDum1984

+0

基本上我知道如何绑定属性。 我的问题是,这次我需要的属性是由视图而不是由视图模型设置的,所以数据流的方向是相反的。 – ZaHaDum1984

+0

视图模型需要设置视图的属性与视图模型设置与视图的属性绑定的属性本身的属性相同。这就是数据绑定的工作原理。 – mm8

相关问题