Как вы получаете доступ к глобальной переменной в C #, как в VB.net? - PullRequest
0 голосов
/ 21 сентября 2011

Если мы объявим переменную global в модуле на vb.net, мы сможем использовать эту переменную в любом месте проекта.

Как мы можем добиться того же в C #.

Ранеекогда мы попытались преобразовать проект vb.net в C #, нам удалось устранить синтаксическую ошибку, но мы не можем получить доступ к глобальной переменной в форме.

Мне нужно какое-то решение или руководство.Где я совершаю ошибку?

Ответы [ 6 ]

3 голосов
/ 21 сентября 2011

Вы можете приблизить функциональность VB.Net Module, поместив переменную внутри статического класса:

public static class Foo
{
     public static string Bar { get; set; }
}

Это позволит вам получить доступ к нему в любом месте пространства имен через Foo.Bar.

3 голосов
/ 21 сентября 2011

В C # вы можете объявить статическое поле.

public class Foo
{
   public static string value;
}

и используйте поле value, используя синтаксис ClassName.Member в любом месте.

Foo.value="Hello!";
2 голосов
/ 21 сентября 2011

Вы можете также рассмотреть возможность использования Singleton Pattern . Это сохраняет вашу логику инициализации переменной в разумном месте. Его также довольно легко защитить или отслеживать изменения в вашей переменной.

1 голос
/ 21 сентября 2011
0 голосов
/ 21 сентября 2011

Вы не можете объявить открытую переменную, если она имеет тип значения, такой как int, string и т. Д.

Но вы можете заключить ее в структуру, например

0 голосов
/ 21 сентября 2011

Должен работать так же.Убедитесь, что помечены как статические.Или попробуйте использовать статическое свойство в вашем модуле вместо переменной.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...