C # Получает значение переменной из отдельной формы

#c# #winforms

#c# #winforms

Вопрос:

Как я могу получить значения переменных из отдельной формы?

Ответ №1:

Вы можете предоставить их через свойства.

Например, если форма Form2 имеет переменную с именем _Count типа int , вы можете создать свойство, подобное этому:

 public int Count
{
    get { return _Count; }
}
  

Затем вы можете получить доступ к этому свойству в экземплярах Form2.

Ответ №2:

Вам просто нужно добавить следующий код в другой форме, если вы хотите получить определенное значение переменной, например текстовое поле… Обратите внимание, что переменная text объявляется тому, кто получит значение, и что она статична.

 public Form2(string text)
{
     InitializeComponent();
     text = textBox.text;
}
  

Ответ №3:

Вы также можете передать свои значения в перегруженный конструктор вашей созданной формы.

Ответ №4:

если вы хотите прочитать значения нескольких переменных, вы можете воспользоваться решением, предоставленным CesarGon.

Это просто, вы можете получить значения свойств, таких как Form2.Подсчитывает и так далее…пока ваша форма не удалена.

Вы можете создать метод, возвращающий хэш-таблицу, которая будет содержать значения, которые вы хотите вернуть. например

 public Hashtable GetData()
{
     Hashtable ht = new Hashtable();
     ht.add('count',textBox1.Text);

     return ht;
}
  

Если вы хотите передать значения одной формы в другую форму, вы можете передать их из конструктора второй формы.

Ответ №5:

Пока запущена другая форма и переменная доступна (public), вам просто нужно передать ссылку на форму.

Комментарии:

1. Общедоступные поля (переменные) не являются хорошей практикой. Вместо этого используйте свойство (см. Мой ответ).