0

问题: 也许挑战可以这样表述:如何将内容页面中的单个属性绑定到 Xamarin Forms 中的全局存储变量?

详细信息: 我正在使用 MVVM 模式。我有一个导航内容页面(3 个此类页面中的 1 个),其中包含一个从 collectionModel 动态填充的 Picker 对象,并且所述模型是读/写的。我试图通过所有 3 个内容页面保留 SelectedItem (或索引,以最合适的为准),以便从页面到页面的导航显示相同的项目(从用户的角度来看)。我该怎么做?

我可以在 ContentPage_Appearing() 事件中手动设置 Picker.SelectedIndex。我更愿意使用绑定。

4

1 回答 1

1

跟着这些步骤:

  1. 创建一个静态类,如下所示:

    public static class DataClass
    {
       public static int PickerSelectedIndex = 0;
    }
    
  2. 在每个内容页面中添加xmlns:localinContentPage标记,如下所示:

    xmlns:local="clr-namespace:DataPersist"
    
  3. 在每个页面的 Xaml 中为控件绑定数据,如下所示:

    <Picker  x:Name="picker" SelectedIndex="{x:Static local:DataClass.PickerSelectedIndex}">
    

它是这样工作的:

在此处输入图像描述

于 2017-10-31T07:26:38.797 回答