Xamarin 表单:获取 NotImplementedException

Xamarin forms: Getting NotImplementedException

我的列表视图中有一个开关。在 xaml 中,为 IsToggled 添加了转换器 属性:

<Switch
          IsToggled="{Binding userProfileTO.userId, Converter={StaticResource isToggledConverter}}"
          HorizontalOptions="EndAndExpand"
          VerticalOptions="CenterAndExpand"/>

转换器代码:

public object Convert(object value, Type targetType, object parameter, CultureInfo culture)
{
    bool toggle = false;
    // My Codes
    return toggle;
}

public object ConvertBack(object value, Type targetType, object parameter, CultureInfo culture)
{
    throw new NotImplementedException();
}

当 运行 此代码时,在 ConvertBack 上获取 NotImplementedException。

Exception thrown: 'System.NotImplementedException' in Myprojectname.dll
An exception of type 'System.NotImplementedException' occurred in Myprojectname.dll but was not handled in user code
The method or operation is not implemented.

IsToggled属性的默认绑定类型是“Two-way”。 这就是调用 ConvertBack 函数的原因。 您可以简单地删除

throw new NotImplementedException();

在您的 ConvertBack 方法中,一切都会正常进行。

或者如果您不想这样做,您可以将绑定模式明确设置为 One-way