Я изучаю это уже больше недели, и я в замешательстве.
Я работаю с несколькими формами в Windows.Каждая форма находится в своем собственном пространстве имен.В следующем коде я создаю новую форму класса Robo_Pass.Он находится в пространстве имен Space_Pass.Форма, в которой я работаю, является классом Overseer и находится в пространстве имен Robo_Pi.
Обратите внимание, что использование нескольких пространств имен не является проблемой.Это очень хорошо работает.
В этой программе я находился с:
using Space_Pass;(Я делаю это, чтобы получить доступ к Robo_Pass без необходимости указывать пространство имен, в котором оно находится.
Вот мой код:
public void Btn_Robo_Pass_Click(object sender, EventArgs e)
{
// Check to see if this Namespace/Form is open.
bool test = check_App_Open("Robo_Pass");
if (test == false) // if not, then create it.
{
Robo_Pass pass = new Robo_Pass();
// set up event handler for when this form closes
pass.FormClosed += Btn_Apps_Click;
pass.TopMost=true;
pass.Show();
btn_Apps_.PerformClick();
}
else // If already open, then just call Window_Show().
{
Window_Show("Robo_Pass");
btn_Apps_.PerformClick();
}
}
Единственная рассматриваемая строка:
Robo_Pass pass = new Robo_Pass();
Могу ли я что-нибудь добавить в эту строку, чтобы сделать этот объект с именем «pass» глобальным для остальной части программы.
Другими словами, из других методов этого класса я хочу бытьвозможность вызывать методы в другой форме следующим образом:
pass.method(variable);
Я действительно могу сделать это, если я создаю объект «pass» вне метода. Другими словами, если я перемещаю следующий код за пределылюбые методы, с которыми он работает:
Robo_Pass pass = new Robo_Pass();
Затем я могу получить доступ к методам внутри него, используя
pass.method(variable);
Но мне нужно создать этот объект в методе нажатия кнопки, показанном первоначально.
Так что мой вопрос таков.
Есть ли способ, которым я могу создать этот объект в этом методе кнопки и сделать объект доступным в других методах.
Я попытался добавить ключевые слова, такие как staticПубличный, глобальный. Номоя IDE отвергает все это в этом контексте.
Поэтому я не знаю, как сделать этот объект с именем «pass» доступным для других методов этого класса.
Как я уже сказал, это работает как обаяние, если я создаю его экземпляр вне метода.Но не могу этого сделать.Мне нужно иметь возможность создать его экземпляр с помощью кнопки.
Примечание. Я прошу прощения за неправильное форматирование или опечатки в этом посте.Я не часто пишу здесь, но я действительно озадачен этим.Надеюсь, это легко исправить.Я просто не знаю, как это сделать.