用于 UIPickerView 的 Xamarin ValueMember?
Xamarin ValueMember for UIPickerView?
当为 windows 表单应用程序使用组合框时,您可以有一个 DisplayMember(显示的内容)和一个 ValueMember(用户看不到但代码使用的值对于其他进程)
我想知道 Xamarin 中的 UIPickerViews 是否有类似的功能
if there is a similar sort of function for UIPickerViews in Xamarin?
是的!你可以在 UIPickerView
.
中实现它
string[] DisplayMembers = new string[] { "January", "February", "March",...,"December" };
int[] ValueMembers = new int[] {1,2,3,...,12 };
而在Delegate的方法中
public override nint GetRowsInComponent(UIPickerView pickerView, nint component)
{
return DisplayMembers.Length;
}
public override string GetTitle(UIPickerView pickerView, nint row, nint component)
{
if (component == 0)
return DisplayMembers[row];
else
return row.ToString();
}
public override void Selected(UIPickerView pickerView, nint row, nint component)
{
//...
var valueMember=ValueMembers[row].ToString();
// do something you want about valueMember
}
当为 windows 表单应用程序使用组合框时,您可以有一个 DisplayMember(显示的内容)和一个 ValueMember(用户看不到但代码使用的值对于其他进程)
我想知道 Xamarin 中的 UIPickerViews 是否有类似的功能
if there is a similar sort of function for UIPickerViews in Xamarin?
是的!你可以在 UIPickerView
.
string[] DisplayMembers = new string[] { "January", "February", "March",...,"December" };
int[] ValueMembers = new int[] {1,2,3,...,12 };
而在Delegate的方法中
public override nint GetRowsInComponent(UIPickerView pickerView, nint component)
{
return DisplayMembers.Length;
}
public override string GetTitle(UIPickerView pickerView, nint row, nint component)
{
if (component == 0)
return DisplayMembers[row];
else
return row.ToString();
}
public override void Selected(UIPickerView pickerView, nint row, nint component)
{
//...
var valueMember=ValueMembers[row].ToString();
// do something you want about valueMember
}