我正在尝试在Xamarin.Forms应用程序上保存某些标签的状态。我按照Creating Mobile Apps with Xamarin.Forms本书的步骤进行操作,它显示了如何存储每个值的值,但是当您有多个信息时,建议使用此值:
具有更多项目的应用程序可能希望将它们合并到名为AppSettings的类中(例如),将该类序列化为XML或JSON字符串,然后将该字符串保存在字典中。
我迷失了怎么做,我创建了一个简单的类
class AppSettings
{
public double? gain = null;
public string mainTitle = "my title";
}
在我的构造函数中,我以这种方式恢复属性
//! Recover appSettings if some
IDictionary<string, object> properties = Application.Current.Properties;
if (properties.ContainsKey("mainTitle"))
{
mainTitle.Text = properties["mainTitle"] as string;
}
//! New code for loading previous keypad text.
App app = Application.Current as App;
mainTitle.Text = app.MainTitle;
我用来保存它的事件是:
void onHomeOptionButtonClicked(object sender, EventArgs args)
{
Button buttonClicked = (Button)sender;
mainTitle.Text = buttonClicked.Text;
// !Save keypad text.
App app = Application.Current as App;
app.MainTitle = mainTitle.Text;
}
我不知道的是如何构建我的类,以便它可以序列化为JSON(我也不知道如何进行序列化)
我想用这个Javascript的想法在C#中创建一个类:
myAppSettings = {
HomePage : {
name1 : "value1",
name2 : "value2"
name3 : {
name3.name1 : "value3.1"
}
},
OtherPage:{
name1 : "value1",
name2 : "value2"
},
.
.
.
};
在C#中执行此操作的正确方法是什么?