我一直绞尽脑汁(不难做到)试图弄清楚这个异常。我有一个显示用户信息的表单。当我设置断点并逐步执行代码时。方法调用返回对象(在立即窗口中检查),但是当我将标签的用户属性分配给发生时。
这是我的代码:
public Form2()
{
UserInfo user = FileAccess.UserInfoFromXML();
// All the members of user exist.
label1.Text = "Screen Name: " + user.ScreenName; //This is throwing an Null Reference exception the UserInfo is not null
label2.Text = "Full Name: "+ user.FirstName + " " + user.LastName;
label3.Text = "Address: " + user.StreetAddress + " " + user.City + " " + user.State + " " + user.Zip;
label4.Text = "Email Address: " + user.email;
label5.Text = "Date Of Birth: " + user.DateOfBirth;
label6.Text = "Start Date: " + user.StartDate;
DateTime dt = DateTime.Parse( user.StartDate );
dt.AddDays( 30 );
label7.Text = "End Date: " + dt.ToShortDateString();
}
有什么想法吗? 谢谢
答案 0 :(得分:8)
您必须让InitializeComponent()
调用保持在构造函数之上。
此设计器生成的方法会初始化您的组件,以便在您访问它们时标签不再是null
。