Xamarin.Forms Picker - System.Reflection错误

问题描述 投票:0回答:1

我有一个动态绑定Items的简单选择器,这意味着当切换Switch时它会发生变化。但是,有一个异常错误:System.Reflection.TargetInvocationException: Exception has been thrown by the target of an invocation当绑定选择器的ItemSource时,当前有一个选择了SelectedItem处理的项目。有没有一种方法来处理拾取器的绑定,只要有一个被挑选的SelectedItem?谢谢。

Picker.xaml

<Picker ItemSource="{Binding Items}" SelectedItem="{Binding SelectedItem, 
        Mode=TwoWay}" SelectedIndex="{Binding SelectedItemIndex, Mode=TwoWay}"/>
xamarin.forms prism picker
1个回答
0
投票

我解决了我的问题,似乎SelectedItemIndex返回一个-1值,所以我做的是在属性内扔一个if(_SelectedItemIndex > -1)。所以这是发生的事情:

private int _SelectedItemIndex ;
public int SelectedItemIndex
{
    get { return _SelectedItemIndex ; }
    set
    {
        SetProperty(ref _SelectedItemIndex , value);
        if(_SelectedItemIndex > -1)
            lblItem = Items[_SelectedItemIndex ].ItemName;
    }
}
© www.soinside.com 2019 - 2024. All rights reserved.