首先,我是新来的,并且是 csharp 的新手。只是在做一些学习csharp的练习时筋疲力尽。找不到解决方案为什么我收到错误“NullReferenceException 未处理”和
1)如何克服这个?根据我的研究,它与初始化有关,但无法实现。我调试并观察了所有按钮获取的值都为空值是因为这个吗?我该如何解决?该怎么办?要添加哪个代码?
(***欢迎所有有关类初始化和数组以及空内容的通知知识。我想了解所有要点并想成为专家:P,人们也可以优化代码。欢迎提供所有额外信息。)
2)为什么编译器不显示错误但运行代码时出现错误?
好的,现在我有代码了
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Windows.Forms;
namespace temp1
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
Button[] btn = new Button[5];
for (int i = 0; i < 5; i++)
{
btn[i] = new Button();
btn[i].Width = 50;
btn[i].Height = 50;
flowLayoutPanel1.Controls.Add(btn[i]);
btn[i].Click += new EventHandler(btn_Click);
}
}
void btn_Click(object sender, EventArgs e)
{
Button[] btn = sender as Button[];
btn[3].Text = "button name changed"; // here problems occurs
//btn[3].BackColor = Color.Red; // here problems occurs
// btn[3].PerformClick(); // here problems occurs
}
}
}