基本上,我想在列表框中選擇ABDUL SIDDIQ BIN MOHD YUSSAINI(M),然後學生的信息將顯示在右側。我的選擇列表框有問題
正確的輸出:
學生姓名:阿卜杜勒·西迪克BIN MOHD YUSSAINI
性別:(M)
但是,當我選擇阿卜杜勒它顯示此:
學生姓名:ABDUL SIDDIQ BIN MOHD YUSSAINI(M)
性別:阿卜杜勒·西迪克BIN MOHD YUSSAINI
這裏是我的編碼:
private void loadToolStripMenuItem_Click(object sender, EventArgs e) {
openFileDialog1.ShowDialog();
fileToolStripMenuItem.Text = openFileDialog1.FileName;
StreamReader sr = new StreamReader(openFileDialog1.FileName);
string line = "";
while ((line = sr.ReadLine()) != null) {
string name = "";
string gender = "";
char[] selected = line.ToCharArray();
for (int i = 0; i < selected.Length; i++) {
if (selected[i] != '(') {
name += selected[i];
} else if (selected[i] == '(') {
gender += selected[i + 1];
break;
}
}
Student student = new Student();
student.setName(name);
student.setGender(gender);
birthdatePicker.Value = DateTime.Now;
studentlist.addStudent(student);
studentListBox.Items.Add(student);
}
private void studentListBox_SelectedIndexChanged(object sender, EventArgs e) {
string name = studentListBox.SelectedItem.ToString();
Student s = studentlist.findStudent(name);
if (s != null) {
s.setName(studentNameTB.Text);
s.setGender(genderTB.Text);
s.setBirthDate(birthdatePicker.Value);
}
studentNameTB.Text = studentListBox.SelectedItem.ToString();
genderTB.Text = studentListBox.SelectedItem.ToString();
}