我在哪里可以放置静态字符串?

时间:2013-02-10 12:15:43

标签: c# windows-phone-7 xaml

我正在创建 Windows Phone 应用,我发现自己多次写同一MessageBox.Show("Same error message")次。例如

  

“无法连接到服务器”

当用户无法访问互联网时会发生这种情况。

有什么地方我可以把它放在一边写文本并在整个地方获取相同的文字吗?

我可以写一个静态类,但是可能有一个文件吗?

3 个答案:

答案 0 :(得分:3)

  

有什么地方我可以把它放在一边写文本并在整个地方获取相同的文字吗?

是的,有一种特殊的文件,称为strings.resx。它可以让你写

MessageBox.Show(strings.ServerNotFound);

而不是

MessageBox.Show("Server not found");

使用strings.resx的额外好处(实际上是预期目的)是您的应用程序变得易于本地化(see answer to this question):添加适当的翻译并设置当前区域设置是它需要的全部内容将应用程序显示的所有字符串更改为具有适当本地翻译的用户。

答案 1 :(得分:2)

如果你想让它多语言,我会去找Resource.resx文件。

如果没有,您可以选择各种解决方案:

  • 将字符串放在最有意义的地方,在您使用它们的类中
  • 将它们全部存储在专门的课程中

喜欢:

class MyClass 
{
    private static string MyString = "blah";
    // other meaningful stuff
}

或者:

public class MyStaticStrings
{
    public static string MyString = "blah1";
    public static string AnotherString = "blah2";
}

答案 2 :(得分:1)

您可以在App类的App.xaml.cs页面中创建一个静态变量,以便您可以在整个应用程序中访问它。