Передаю данные из первой формы во вторую Выдает ошибку: Ссылка на объект не указывает на экземпляр объекта
//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); //Ошибка: Ссылка на объект не указывает на экземпляр объекта
Что можно сделать?
Можете перегрузить нужную форму и передавать туда ссылку/объект.
К примеру хотим открыть форму 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);
}
Кофе для программистов: как напиток влияет на продуктивность кодеров?
Рекламные вывески: как привлечь внимание и увеличить продажи
Стратегії та тренди в SMM - Технології, що формують майбутнє сьогодні
Выделенный сервер, что это, для чего нужен и какие характеристики важны?
Современные решения для бизнеса: как облачные и виртуальные технологии меняют рынок
Пытаюсь отправить документ с кириллическими символами в названии через телеграм-бот:
Короче, суть в чем, я создаю кнопки на динамической форме и хочу чтобы у каждой кнопки было све нажатие или что-нибудь такое, по которому я смогу...
Есть объект data; И нужно через текстовый формат обращаться в его свойствамНапример