Как установить выбранный элемент в MvxSpinner
У меня есть MvxSpinner, который связан сList
таким образом:
SelectedPhotoCategory
что SelectedItem связан с также являетсяPhotoCategory
, Когда этот экран врежим обновления "ViewModel устанавливаетSelectedPhotoCategory
к PhotoCategory, чей PhotoCategoryId совпадает с тем, что в базе данных SQLite. Однако при отображении счетчика значение по умолчанию (которое я добавляю вPhotoCategories
свойство, PhotoCategory = 0, CategoryName = "[Выберите категорию]") Показано. Единственное исправление ямы обнаружили, что этот (работает нормально) код добавлен в представление: I '
protected override void OnCreate(Bundle bundle) {
base.OnCreate(bundle);
SetContentView(Resource.Layout.PhotoView);
//If we're in Update mode, select the relevant photo category in the spinner:
PhotoViewModel photoViewModel = (PhotoViewModel)ViewModel;
if (photoViewModel.ScreenMode == Constants.ScreenMode.Update) {
MvxSpinner photoCategorySpinner = FindViewById(Resource.Id.photoCategorySpinner);
int itemPosition = 0;
int selectedPhotoCategoryId = photoViewModel.SelectedPhotoCategory.PhotoCategoryId;
foreach (PhotoCategory photoCategory in photoViewModel.PhotoCategories) {
if (photoCategory.PhotoCategoryId == selectedPhotoCategoryId) {
photoCategorySpinner.SetSelection(itemPosition);
}
itemPosition++;
}
}
Мы также пытались использовать метод GetPosition в MvxSpinner.Adapter, но он всегда возвращает -1 для PhotoCategoryId, CategoryName или SelectedPhotoCategory в качестве значения параметра.
Что мне не хватает ??