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
我的列表视图中有一个开关。在 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