首页 > 解决方案 > 验证 xamarin.forms 选择器

问题描述

我使用此代码在我的选择器上获取所选项目:

var loanType = picker.Items[picker.SelectedIndex];

我想在未选择任何内容但返回时验证选择器:

System.ArgumentOutOfRangeException: 'Index was out of range. Must be non-negative and less than the size of the collection.
Parameter name: index'

我知道这是因为没有选择任何内容,所以我想问一下是否有任何解决方法。我使用语法picker.Items[picker.SelectedIndex];而不是pickerPaymentMode.SelectedIndex因为选择器的项目源来自通过 API 的 JSON 响应的列表

标签: c#xamarin.forms

解决方案


如果选择器中未选择任何内容,则picker.SelectedIndex值为-1

因此,您可以在每次使用时检查picker.SelectedIndex

    if (picker.SelectedIndex != null && picker.SelectedIndex >=0)
    {
        var loanType = picker.Items[picker.SelectedIndex];

    }
    else
    {
        Console.WriteLine(picker.SelectedIndex);
    }

推荐阅读