验证 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 响应返回的列表

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

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

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

最新更新