0

我注意到这...如何在Windows Store应用程序的RoamingSettings下保存包含换行符的字符串?

void MyTextBox_TextChanged(object sender, TextChangedEventArgs e) 
{ 
    ApplicationData.Current.RoamingSettings.Values["Text"] = Text; 
} 

...是Windows 8.1存储应用程序,当你TextBox的文本包含一个换行符不可靠(AKA它没有当你有一个换行符保存\nText对象中)。有什么办法解决这个问题?使用Regex.Escape(Text)Regex.Unescape((string)ApplicationData.Current.RoamingSettings.Values["Text"])似乎也不适用于我。沙盒可能会试图绕过任何\来阻止shellcode注入OS层。

,似乎工作就是保存在RoamingSettings到文件的唯一的事情...

+0

我只是试过了,新行没有任何问题存储。我试过这个:'ApplicationData.Current.RoamingSettings.Values [“foo”] =“Hello \ nWorld!”;'你可以在这个页面下面调试你存储的值:http://lunarfrog.com/blog/2012/09/ 13/inspect-app-settings/ – kiewic

+0

尝试从TextBox对Windows 8.1。我没有这样做! – Alexandru

回答

0

看看这里的示例代码:ApplicationData.RoamingSettings | roamingSettings property

至于这样的:

Windows 8.1在TextBox的文本中包含换行符时存储应用程序(当Text对象中有换行符时,它不会保存)。有什么办法解决这个问题?

试图通过同时设置TextBox.AcceptsReturn财产和TextBox.Multiline财产true。请参阅上面的TextBox.AcceptsReturn链接中的示例。

+0

“每个设置的名称最多可以有255个字符,每个设置的大小可以高达8K字节,每个复合设置可以高达64K字节大小,同步引擎可能会限制设置的总大小,可以漫游的文件。“ - 但即使你低于255并有\ n,它也不会让你保存它。 – Alexandru

相关问题