2017-06-01 20 views
0

我有一個帶有基本視圖和他各自的視圖模型綁定的Xamarin Forms項目。將視圖元素綁定到ViewModel的最佳實踐Xamarin表單

我試圖將視圖元素綁定到ViewModel上,因爲有些視圖會有很多元素作爲列表視圖,標籤,按鈕......這些功能會改變視覺屬性,例如能見度。

我認爲綁定每一個屬性與綁定作爲這個例子是一個原因。

 <Label 
     Text="{Binding PasswordLabel,Mode=OneWay}" 
     VerticalOptions="Center" 
     HorizontalOptions="Center" /> 
     <Entry 
     Text="{Binding Password, Mode=TwoWay}" 
     IsPassword="True" 
     Placeholder="Password" 
     VerticalOptions="Center" 
     HorizontalOptions="CenterAndExpand" 
     /> 

所以我儘量讓觀點的元素,並與喜歡按鈕_button =「按鈕」

這樣我可以複製Web組件開發,用自己的責任和可重複使用的任何組件視圖模型對應的對象綁定。

你認爲我的想法是一個很好的做法,如果是可行的做這個綁定?

回答

1

雖然它看起來像你提到的那樣是因爲它是必須的。您的視圖模型代表您的視圖,但它們不是視圖,這意味着它們不應該存在任何UI元素。您的視圖模型將不可知的用戶界面,他們應該只有屬性和命令。

視圖模型應該可測試而不依賴於UI事件。您的視圖模型不知道點擊,點按或任何其他事件。

+0

我這麼認爲MVVM模式不是我想要的工作方式,您怎麼看待將xamarin實用程序改編爲自定義組件基本框架?我認爲可以對Web開發人員有用 – Danielbahe

+0

最後,我發現了最好的方法(對我來說)我的視圖只是將UI元素綁定到ViewModel上的一個屬性,例如,文本,單擊Commands,然後我做一個導航靜態類,這樣視圖沒有關於導航或瞭解其他類或模塊的邏輯。我的解決方案中的每個項目都是不可知的。 – Danielbahe