Здравствуйте, я надеюсь, что вы можете мне помочь. Я пытался решить эту проблему более 10 дней.
У меня есть приложение формы с 1 usercontrol и 1 Class, и мне нужно использовать экземпляр моего класса, созданный в Form1 внутри UserControl1.(С Form1 до Form2 все работает нормально)
Класс CMensaje:
namespace WindowsFormsAppInstanciarClaseEnControl
{
public class CMensajes
{
private string mensaje;
public CMensajes()
{
}
public string Mensaje { get => mensaje; set => mensaje = value; }
}
}
UserControl1:
namespace WindowsFormsAppInstanciarClaseEnControl
{
public partial class UserControl1 : UserControl
{
CMensajes mensajito;
public UserControl1(CMensajes mensa)
{
InitializeComponent();
mensajito = mensa;
}
private void UserControl1_Load(object sender, EventArgs e)
{
}
private void button1_Click(object sender, EventArgs e)
{
label1.Text = mensajito.Mensaje;
}
}
}
Form1
namespace WindowsFormsAppInstanciarClaseEnControl
{
public partial class Form1 : Form
{
CMensajes mensajito = new CMensajes();
public Form1()
{
InitializeComponent();
}
private void button1_Click(object sender, EventArgs e)
{
mensajito.Mensaje = textBox1.Text;
UserControl1 usercontrol1 = new UserControl1(mensajito);
}
}
}
Проблемаэто то, что это работает, но в результате я начинаю получать
Переменная mensajito
либо необъявлена, либо никогда не назначалась.Когда я открываю Form1 Design
.Когда я делаю тот же код с Form1
до Form2
все идеально !!
На самом деле мне нужно передать экземпляр моего класса serialport
, но то же самое. Здесь я пишу только тестовый код, чтобы понять, что я могу сделать?
Спасибо.
Экран ошибки при попытке открыть Form1.designer.cs