2013-02-10 6 views
2

Im создание Windows Phone приложение, и я нахожу, что пишу то же самое MessageBox.Show("Same error message") несколько раз. НапримерГде я могу поставить статические строки?

«Не удалось подключиться к серверу»

Это происходит, когда пользователь не имеет доступа в Интернет.

Есть ли где-нибудь, что я могу написать, чтобы написать текст один раз и получить один и тот же текст повсюду?

Я мог бы написать статический класс, но, возможно, есть файл для этого?

ответ

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"; 
} 
1

Вы можете создать статическую переменную на странице App.xaml.cs в классе App, чтобы вы могли получить доступ к ней по всему приложению.

3

Есть ли где-нибудь, что я могу написать, чтобы написать текст один раз и получить один и тот же текст повсюду?

Да, для этого есть особый вид файла, называемый strings.resx. Это позволяет писать

MessageBox.Show(strings.ServerNotFound); 

вместо

MessageBox.Show("Server not found"); 

Дополнительным преимуществом (на самом деле, намеченная цель) использования strings.resx является то, что ваше приложение становится легко локализуемым (see answer to this question): добавление собственных переводов и настройки текущая локаль - это все, что потребуется, чтобы изменить все строки, которые ваше приложение отображает пользователям с их надлежащими локальными переводами.

Смежные вопросы