首页 > 解决方案 > Xamarin.Forms 选择器

问题描述

我有一个选择器:

<Picker Title="Status" x:Name="pickerStatus">
  <Picker.Items>
    <x:String>In Progress</x:String>
    <x:String>Completed</x:String>
    <x:String>Dropped</x:String>
    <x:String>Plan To Take</x:String>
 </Picker.Items>

所需值已作为文本值存储在数据库中。如何在可编辑页面上显示选择器以将选定的文本值从数据库加载到编辑页面选择器中?我试过了:

pickerStatus.SelectedItem = _courseObject.Status;

标签: xamarinxamarin.forms

解决方案


这种方法是为代码隐藏而设计的,如果您打算使用 ViewModels,我可以提供更深入的答案。但对于你的情况,这有效:

List<string> pickerStates = new List<string> 
{ 
    "In Progress", 
    "Completed", 
    "Dropped", 
    "Plan To Take" 
};
pickerStatus.ItemsSource = pickerStates;
pickerStatus.SelectedIndex = pickerStates
                            .FindIndex(status => status == _courseObject.Status);

推荐阅读