Работа с двумя формами. Передача Label между формами

411
21 декабря 2016, 01:20

Добрый день! У меня есть две формы PZ6 и inputForm Вторая вызывается из первой по нажатию кнопки.

private void inputButton_Click(object sender, EventArgs e)
{
  inputForm change = new inputForm();
  input.Show();
}

В PZ6 у меня есть label называемый ValuesLabel, туда выводятся значения. Как сделать, чтобы после закрытия inputForm эти значения обновлялись. Пытался прописать это в самой inputForm, но не получилось. Пытался прописать как метод в PZ6.cs, ругается на то, что ValuesLabel не static. Есть идеи?

Answer 1

Может быть, вам нужно вот что:

using (inputForm change = new inputForm())
{
    var result = change.ShowDialog(this);
    if (result == DialogResult.OK)
    {
        var firstValue = change.ИмяВашейПервойМетки;
        var secondValue = change.ИмяВашейВторойМетки;
        // ну и пишите эти значения куда надо
    }
}
Answer 2

Один из способов - это предоставить классу формы inputForm объект формы PZ6.
Добавьте в конструктор inputForm параметр типа PZ6 и передавайте туда экземпляр данной формы. Тогда вы сможете манипулировать формой PZ6 из inputForm.

Будет выглядеть примерно так:

public class PZ6
{
    public string ValuesLabel;
    private void inputButton_Click(object sender, EventArgs e)
    {
      inputForm change = new inputForm(this);
      input.Show();
    }
}
public class inputForm
{
    // Приватное поле для взаимодействия с PZ6
    private PZ6 _pz6;
    // Конструктор принимает объект PZ6
    public inputForm(PZ6 pz6)
    {
      this._pz6 = pz6;
    }
    // Изменить текст метки
    public void ChangeLabel(string value)
    {
        _pz6.ValuesLabel.Text = value;
    }
}
READ ALSO
axcryptNet исходники

axcryptNet исходники

Привет, ребят, при использовании библиотек AxcryptNet для шифрования файлов столкнулся с проблемой

376
System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта

System.NullReferenceException: Ссылка на объект не указывает на экземпляр объекта

Всем приветПишу игру "Сапёр", работающую из окна консоли

657
Исключение при обращении к серверу

Исключение при обращении к серверу

При обращении к серверу из клиента выскакивает исключение SystemNet

437