.net 将视图元素绑定到ViewModel Xamarin表单的最佳实践

.net 将视图元素绑定到ViewModel Xamarin表单的最佳实践,.net,xaml,xamarin,mvvm,.net,Xaml,Xamarin,Mvvm,我有一个Xamarin表单项目,它有一个基本视图和他各自的viewmodel绑定 我正在尝试将视图元素绑定到ViewModel,以便尽可能容易地工作,因为有些视图将包含许多元素,如列表视图、标签、按钮。。。具有许多改变视觉特性的功能,例如可见性 我认为用绑定绑定每个属性(如本例所示)是一个caos <Label Text="{Binding PasswordLabel,Mode=OneWay}" VerticalOptions="Center"

我有一个Xamarin表单项目,它有一个基本视图和他各自的viewmodel绑定

我正在尝试将视图元素绑定到ViewModel,以便尽可能容易地工作,因为有些视图将包含许多元素,如列表视图、标签、按钮。。。具有许多改变视觉特性的功能,例如可见性

我认为用绑定绑定每个属性(如本例所示)是一个caos

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

因此,我尝试获取视图元素并与viewmodel中的相应对象绑定,如Button _Button=“Button”

这样我就可以复制Web组件开发,任何组件都有自己的责任感和可重用性


你认为这是一个很好的做法,我的想法,如果有可能做这个绑定?

虽然它似乎是曹,正如你提到的,这是它必须的方式。视图模型表示视图,但它们不是视图这意味着这些视图中不应该存在任何UI元素。您的viewmodels将与UI无关,并且它们应该只有属性和命令


viewmodels应该是可测试的,不依赖于UI事件。您的viewmodels不知道单击、点击或任何其他事件。

我认为MVVM模式不是我想要的工作方式,您认为如何使xamarin实用程序适应自定义组件基础框架?我认为这对web开发人员很有用。最后,我发现了最好的方法(对我来说)我的视图只需将UI元素绑定到我的ViewModel上的一个属性,例如,文本、单击命令,然后我创建一个导航静态类,这样视图就不需要导航或了解其他类或模块。我的解决方案中的每个项目都是不可知的。