【问题标题】:Mvvmcross MvxSpinner ValidationMvvmcross MvxSpinner 验证
【发布时间】:2017-09-01 17:19:26
【问题描述】:

我正在尝试寻找一种方法来验证用户是否从微调器中选择了适当的值。这是我的微调器代码:

<MvvmCross.Binding.Droid.Views.MvxSpinner
        android:layout_width="fill_parent"
        android:layout_height="wrap_content"
        android:id="@+id/secondBP1"
        android:textSize="40dp"
        android:layout_marginLeft="6.5dp"
        android:layout_marginRight="6.5dp"
        local:MvxItemTemplate="@layout/item_shippingtocountry"
        local:MvxDropDownItemTemplate="item_spinnerdropdown"
        local:MvxBind="ItemsSource Country;SelectedItem SelectedCountry; Error Errors['SelectedPackageType']" />

我正在使用Mvvm Validation helper library。我已经为我的应用程序编辑文本验证,但我不知道应该如何验证我的微调器。感谢您的帮助。

【问题讨论】:

  • 你想要的是当用户在微调器中选择一个项目时触发一个命令?

标签: c# android validation xamarin mvvmcross


【解决方案1】:

找到一种方法来验证用户是否从微调器中选择了适当的值

尝试绑定HandleItemSelected 属性。它正在尝试 ICommand 值。

<MvvmCross.Binding.Droid.Views.MvxSpinner
  android:layout_width="fill_parent"
  android:layout_height="wrap_content"
  android:textSize="40dp"
  local:MvxItemTemplate="@layout/item_spinner"
  local:MvxDropDownItemTemplate="@layout/item_spinnerdropdown"
  local:MvxBind="ItemsSource Items;SelectedItem SelectedItem;HandleItemSelected MyCommand" 
  />

那么您的命令将如下所示:

private MvxCommand<string> _subunitSelectedCommand;
public ICommand MyCommand =>
     _subunitSelectedCommand =
            (_subunitSelectedCommand ?? new MvxCommand<string>(OnSubunitSelected));

private void OnSubunitSelected(string name)
{
    //Do your validated logic
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-11-23
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多