我有一个名为 Tel 的对象,它绑定到以下三个控件。
this.txtTelName.DataBindings.Add("Text", tel, "T_Name", false, DataSourceUpdateMode.OnPropertyChanged);
this.chkActive.DataBindings.Add("Checked", tel, "T_Active", true, DataSourceUpdateMode.OnPropertyChanged);
this.txtNotes.DataBindings.Add("Text", tel, "T_Notes", true, DataSourceUpdateMode.OnPropertyChanged);
这会提示该对象所有的值都成功进入控件。
我需要实现一个Next按钮,它允许用户通过保存 tel 对象来保存控件上的值,然后使用新实例创建 tel 对象并清理所有控件。因此用户可以添加新记录。
这是下一个按钮代码:
private void btnNext_Click(object sender, EventArgs e)
{
BllTel.Save(tel); //Saves the Tel entity
this.tel = new Model.DatabaseModels.Tel();
tel.T_Active = BusinessLogic.Enums.StatusCodes.Active;
txtTelName.Text = "";
txtNotes.Text = "";
}
到这里一切正常,但是在用户第二次添加之后,tel 对象没有绑定他们在控件中写入的值,将T_Name和T_Notes设为空值。
注意:我注意到,只要 btnNext_Click 方法代码块结束(在 dubuggin 上),它就会遍历数据库中的所有实体(我看到它,在调试时,它会遍历 EDMX 设计器中定义的所有属性,我可以看到它获取了表中所有可用的值)。