我在扩展UIPickerViewModel
的类时遇到问题。
我有一个字符串,可以从选择器视图访问选定的值。即public string SelectedValue {get; set;}
。然后,在我的类中使用ViewDidLoad()方法,将选择器视图上的模型设置为该类的新实例。
当用户选择值并单击“完成”按钮时,我要访问他们选择的值,然后关闭选择器视图,如下所示:
private void GalaxyDoneClicked()
{
this.galaxyTextField.Text = this.galaxyPicker.Model.SelectedValue;
}
但是我收到错误消息:UIPickerViewModel does not contain a definition for 'SelectedValue' and no extension method 'SelectedValue' accepting a first argument of type 'UIPickerViewModel' could be found ( are you missing a using directive or an assembly reference?)
。
我对C#和Xamarin还是陌生的,在这里的任何帮助都会受到欢迎。
答案 0 :(得分:1)
您需要将galaxyPicker
强制转换为自定义类:
if ( galaxyPicker is MyCustomPickerViewModelClass myCustomPicker )
{
this.galaxyTextField.Text = this.galaxyPicker.Model.SelectedValue;
}
MyCustomPickerViewModelClass
是您从UIPickerViewModel
派生的自定义类
答案 1 :(得分:1)
那帮助了马丁。最终被
if(galaxyPicker.Model is MyCustomPickerViewModelClass myCustomPickerModel)
{
this.galaxyTextField.Text = myCustomPickerModel.SelectedValue;
}