Windows Forms c#,
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;
namespace project
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
public void Form1_Load(object sender, EventArgs e)
{
Label label1 = new Label();
label1.Location = new Point(160,74);
label1.Text = "project";
label1.BackColor = TransparencyKey;
this.Controls.Add(label1);
Button bt1 = new Button();
bt1.Name = "button1";
bt1.Text = "Регистрация";
bt1.Width = 129;
bt1.Height = 42;
bt1.Location = new Point(123, 159);
bt1.Click += this.bt1_reg;
Button bt2 = new Button();
bt2.Name = "button2";
bt2.Text = "Вход";
bt2.Width = 129;
bt2.Height = 44;
bt2.Location = new Point(123, 244);
this.Controls.Add(bt1);
this.Controls.Add(bt2);
}
public void bt1_reg(object sender,EventArgs e)
{
bt1.Hide();// тут ошибка
}
}
}
В методе "bt1_reg" появляется ошибка System.NullReferenceException: "Ссылка на объект не указывает на экземпляр объекта.". Как решить проблему?Нужно чтобы при нажатии на кнопку bt1 срабатывал метод bt1_reg, в котором срабатывает метод Hide() для скрытия кнопки.
Ответы (2 шт):
Автор решения: Igor
→ Ссылка
У Вас где-то объявлен член класса bt1.
/*Button */bt1 = new Button();
bt1.Name = "button1";
...
Автор решения: aepot
→ Ссылка
Попробуйте вот так
public void bt1_reg(object sender,EventArgs e)
{
(sender as Button).Hide();
}