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();
}
→ Ссылка