2017-07-07 106 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

相關問題