我有一个Teacher
和一个Controller
类,其中包含Teacher
个列表。
static public List<Teacher> teachers = new List<Teacher>();
我有一个插入表单,我应该在其中输入新教师的数据并将其添加到组合框中。 Combobox位于另一种名称为Add_New_Group
的表单中。如何添加我在插入表单中输入的新教师数据以及另一个Add_New_Group
表单中的组合框。
在组合框中,它会显示教师的姓名和姓氏,但是当我添加新教师并保存它时,在组合框中显示我(收藏集)而不是姓名。我的错是什么?
public partial class Add_New_Group : Form // in Add_New_Group form
{
public Add_New_Group()
{
InitializeComponent();
comboBox1.Items.Add(Controller.teachers);
}
}
public partial class Insert : Form // in Insert form
{
private void button2_Click(object sender, EventArgs e)
{
Teacher x = new Teacher(textBox1.Text,textBox2.Text, int.Parse(textBox3.Text), textBox4.Text, n);
Controller.teachers.Add(x);
}
}
答案 0 :(得分:0)
您应该使用数据绑定。 ComboBox有两个关键属性,DataSource
和Displaymember
。您需要将列表设置为DataSource
,将Name
属性设置为DisplayMember
。此外,每次将教师添加到列表时,您必须重新设置DataSource
以刷新项目,否则内容将不会更新。
以下是一个例子:
static List<Teacher> teachers = new List<teachers>();
public void AddTeacher()
{
Teacher x = new Teacher(textBox1.Text,textBox2.Text, int.Parse(textBox3.Text), textBox4.Text, n);
comboBox1.DataSource = null;
comboBox1.DataSource = teachers;
comboBox1.DisplayMember = "Name";
}