Validation 如何使用mvvmcross进行验证
我刚刚开始学习使用Xamarin和MvvmCross编写移动应用程序。由于YouTube上的N+1天MvvmCross视频(非常感谢Stuart Lodge)等强大支持,我发现学习基本知识非常容易 然而,我正在与估值数据作斗争。我希望Stackoverflow上的人能给我指点一些有用的博客或使用MvvmCross执行验证的教程。我希望能够验证输入的数据,然后更新指示问题的视图Validation 如何使用mvvmcross进行验证,validation,xamarin,mvvmcross,Validation,Xamarin,Mvvmcross,我刚刚开始学习使用Xamarin和MvvmCross编写移动应用程序。由于YouTube上的N+1天MvvmCross视频(非常感谢Stuart Lodge)等强大支持,我发现学习基本知识非常容易 然而,我正在与估值数据作斗争。我希望Stackoverflow上的人能给我指点一些有用的博客或使用MvvmCross执行验证的教程。我希望能够验证输入的数据,然后更新指示问题的视图 我需要一些来自第一原则的东西,因为我不知道我不知道的东西(如果这有意义的话)。我需要遵循一些最佳实践。数据验证可以以不同
我需要一些来自第一原则的东西,因为我不知道我不知道的东西(如果这有意义的话)。我需要遵循一些最佳实践。数据验证可以以不同的方式显示在UI中。 例如,可以显示消息框或显示标签 假设您希望在UI中的某个位置有一个带有红色文本的标签来显示错误 我假设您的UI中有“保存”按钮或类似按钮 可以将按钮绑定到视图模型中的
SaveCommand
在执行SaveCommand
时,可以检查所有数据是否有效,并设置Error
string属性
您可以将标签的文本绑定到Error
属性。此外,还可以将标签的可见性绑定到条件(Error!=null)
谢谢Andrei,但我正在寻找一个框架来完成它,而不是自己滚动。在我最初的问题中,我应该说得更清楚些。MvvmCross中是否内置了任何内容。我看了验证插件,但没有你如何使用它的例子。我用谷歌搜索了它(我笑了!),只是没有我理解的如何使用它的例子。包括一个演示
public class SettingsViewModel : MvxViewModel
{
string firstName;
public string FirstName
{
get { return this.firstName; }
set
{
if(this.firstName != value)
{
this.firstName = value;
this.RaisePropertyChanged(()=> this.FirstName);
this.Error = null; // reset error
}
}
}
public string Error { get; private set; }
public ICommand SaveCommand { get { return new MvxCommand(this.Save); } }
void Save()
{
// reset error
this.Error = null;
if(string.IsNullOrEmpty(this.FirstName))
{
this.Error = "First name is empty";
}
if(string.IsNullOrEmtpy(this.Error))
{
// no error, save settings...
}
else
{
this.RaisePropertyChanged(()=> this.Error);
}
}
}