Питання: Можливо, виклик можна було б сказати так: Як я прив’язую одну властивість сторінки вмісту до глобально збереженої змінної у формах Xamarin?
Подробиці: Я використовую шаблон MVVM. У мене є сторінка контенту навігації (1 з 3 таких сторінок) з об'єктом Picker, який динамічно заповнюється з колекціїModel і зазначена модель читається / записується. Я намагаюсь зберегти SelectedItem (або індекс, що є найбільш підходящим) через усі 3 сторінки вмісту, щоб навігація зі сторінки на сторінку відображала один і той же елемент (з точки зору користувача). Як це зробити?
Я можу встановити Picker.SelectedIndex вручну в події ContentPage_Appearing (). Я б набагато скоріше скористався палітуркою.
Відповіді:
1 для відповіді № 1Виконайте наступні кроки:
Створіть статичний клас, наприклад:
public static class DataClass { public static int PickerSelectedIndex = 0; }
Додати
xmlns:local
вContentPage
позначте на кожній сторінці вмісту, наприклад:xmlns:local="clr-namespace:DataPersist"
Прив’язування даних для ваших елементів керування в Xaml кожної сторінки, як це:
<Picker x:Name="picker" SelectedIndex="{x:Static local:DataClass.PickerSelectedIndex}">
Це працює так: