kom*_*mbo 2 c# nullreferenceexception winforms
我正在使用VS2010构建Windows窗体应用程序.我想读取用户从下拉列表中选择的值ComboBox并patientNo基于此生成.但是当我运行应用程序时,我得到了一个NullReferenceException.
这是我的代码:
private void button1_Click(object sender, EventArgs e)
{
string patientNumber;
string gender = comboBox2.SelectedValue.ToString();
if (gender != null)
{
if (gender == "Female")
{
var generator = new PatientNumberGenerator();
patientNumber = generator.GeneratePatientNumber(Gender.Female);
const string message = "patientNumber";
const string caption = "Testing PatientNumber class";
var result = MessageBox.Show(message, caption,
MessageBoxButtons.YesNo,
MessageBoxIcon.Question);
}
else if (gender == "Male")
{
var generator = new PatientNumberGenerator();
patientNumber = generator.GeneratePatientNumber(Gender.Male);
const string message = "patientNumber";
const string caption = "Testing PatientNumber class";
var result = MessageBox.Show(message, caption,
MessageBoxButtons.YesNo,
MessageBoxIcon.Question);
}
}
Run Code Online (Sandbox Code Playgroud)
}
你还没有说过发生异常的那一行,所以在黑暗中它是一个镜头.然而:
string gender = comboBox2.SelectedValue.ToString();
Run Code Online (Sandbox Code Playgroud)
comboBox2.SelectedValue可能为null,在这种情况下尝试调用ToString()它将导致NullReferenceException.尝试:
if (comboBox2.SelectedValue == null)
{
return;
}
string gender = comboBox2.SelectedValue.ToString();
//[etc…]
Run Code Online (Sandbox Code Playgroud)
如果这不是您的问题,则异常可能在该方法的其他调用中,例如GeneratePatientNumber.