2011-05-06 155 views
0

我是Caliburn Micro的新手,正在嘗試WP7實現。我想將枚舉的值從一個虛擬機傳遞到另一個虛擬機,但我必須忽略一些顯而易見的事情:我試圖傳遞其名稱和數值,但目標虛擬機總是獲取默認值(對應於0)。通過查詢字符串將枚舉值傳遞給CaliburnMicro viewmodel

我的情況更詳細:說我有一個虛擬機暴露枚舉值的屬性。說枚舉是ProductFamily {硬件,軟件};我有一個按鈕,它打開另一個屏幕,並顯示一個底層虛擬機,該虛擬機應根據所選系列顯示產品列表。因此,虛擬機在其構造函數接受,像INavigationService實例調用導航:

_navigation.Navigate("MyView.xaml?Family=" + _nFamily, UriKind.RelativeOrAbsolute); 

(此代碼將名字,但我也試圖與(INT)_nFamily)。現在,我在目標VM中有相應的Family屬性,例如

public ProductFamily Family { get { ... } set { ... } } 

如果我把在屬性的setter方法,我可以看到它是由CM稱爲斷點,但是接收的值對應於默認值(0,上面說的樣品中硬件),而我期待另一一。我可以確認在構建用於導航的查詢字符串時傳遞了正確的值。那麼,目標虛擬機獲得不正確的值的情況如何?

感謝所有

回答

0

這聽起來像,這可能是在值變換邏輯的錯誤。你可以在項目網站上爲問題創建一張票並附上一個簡單的樣本來證明問題嗎?如果是這樣,我可以相對迅速地修復這個問題。

+0

謝謝,這是一個錯誤,這裏是分辨率:http://caliburnmicro.codeplex.com/SourceControl/changeset/changes/15abbc3dec16 – Naftis 2011-05-11 21:45:19