我以Caliburn.micro開始,我有點困惑。假設我有一個包含2個窗格的UI,例如(這是一個假示例)CustomersView和CustomerView,以及2個相應的VM,CustomersViewModel和CustomerViewModel。Caliburn Micro:在主外殼虛擬機中的「children」VM
現在,我想要將這兩個窗格都包含在一個主外殼中,它應該能夠訪問所有虛擬機的數據成員:
public class MainViewModel
{
private CustomerViewModel _vmCustomer;
private CustomersViewModel _vmCustomers;
...
}
如的ViewModels由CM創建的,我怎麼能我的主殼連接到他們的每一個實例?或者這是一個錯誤的方法?這裏我不需要一個指揮,因爲我沒有激活或關閉一組窗格,就像在MDI中一樣:我有一個SDI UI,其中有一些窗格,每個窗格都由它的虛擬機支持,還有一個主外殼操縱他們。類似情況下的正確方法是什麼?
謝謝,這給了我正確的線索。至於注入虛擬機,我想我可以將[導入]添加到屬性中,因爲我使用的是MEF引導程序,並讓CM創建虛擬機。 – Naftis 2011-06-03 11:35:59
是或者你可以在構造函數中注入它們。 – 2011-06-03 13:07:30