C# Передача данных из формы

159
10 марта 2018, 16:14

Передаю данные из первой формы во вторую Выдает ошибку: Ссылка на объект не указывает на экземпляр объекта

//Form1
    public FormChoise FormChoise1;
    FormChoise1 = new FormChoise();
    FormChoise1.InputString = "M|G";
    FormChoise1.Owner = this;
    FormChoise1.Show();
    public void DelMess(int hap_del, string source_)
    {"hi"}
//Form2
    public string InputString;
    Form1 formMain;                    //равен null
    string OutString = "hi";
    formMain.DelMess(1, OutString);    //Ошибка: Ссылка на объект не указывает на экземпляр объекта

Что можно сделать?

Answer 1

Можете перегрузить нужную форму и передавать туда ссылку/объект.

К примеру хотим открыть форму 2 и там задать нужное значение (В данном примере мы в Form2 передаем необходимый нам объект, который дальше присваиваем к нужной, внутренней переменной, что позволит нам без труда использовать ее в дальнейшем):

private string Value;
public Form2(string val)
{
    InitializeComponent();
    Value = val;
}

И вызов:

Form2 form2 = new Form2("Hello!");
form2.Show();

Другой пример, хотим запустить Form2 и из нее вызвать нужное нам из Form1 (В данном примере мы можем передать ссылку на первую форму и работать с ней):

public Form2(Form1 form)
{
    InitializeComponent();
    form.MyMethod("World!");
}

Форма 1:

//...
Form2 form2 = new Form2(this);
form2.Show();
//...
public void MyMethod(string aa)
{
    MessageBox.Show(aa);
}
READ ALSO
PostAsync файл MultiPartFormData с кириллическими символами

PostAsync файл MultiPartFormData с кириллическими символами

Пытаюсь отправить документ с кириллическими символами в названии через телеграм-бот:

167
Динамическое создание кнопок и работа с ними C#

Динамическое создание кнопок и работа с ними C#

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

231
Разница между assembly и nuget в asp.net core

Разница между assembly и nuget в asp.net core

Попробовал разделить типовое aspnet core 2

235
Текстовый формат для выборки данных из объекта javascript?

Текстовый формат для выборки данных из объекта javascript?

Есть объект data; И нужно через текстовый формат обращаться в его свойствамНапример

231