在我的C#WinForm中,我有一个绑定源和数据网格视图。在Form_Load事件上;
_bsCompany = new BindingSource();
_listOfCompany = CompanyService.GetListCompany();//Gets a listofCompany
_bsCompany.DataSource = _listOfCompany;
dgvCompany.DataSource = _bsCompany;
我已将其绑定到文本框;
txtCompanyID.DataBindings.Add("Text", _bsCompany, "CompanyID");
这很有效。当我单击gridview中的任何记录时,CompanyID将显示在文本框中。
我的问题是,如果我从列表中删除其中一个公司,则绑定被卡住,文本框未显示datagridview中的选定值。删除项目的值在删除后位于文本框中;
我做错了吗?我需要清除并重新绑定文本框吗?
编辑:我已经清除并重新绑定,但同样的问题。
txtCompanyID.DataBindings.Clear();
txtCompanyID.DataBindings.Add("Text", _bsCompany, "CompanyID");
答案 0 :(得分:0)
试试这个。
txtCompanyID.DataBindings.Add("Text", dgvCompany.DataSource, "CompanyID");
答案 1 :(得分:0)
好的,我这样做了; (忘了用我如何解决这个问题更新问题)
_listOfCompany.Remove(company);
_bsCompany.ResetBindings(true);
这将重置控件和数据源之间的绑定
答案 2 :(得分:0)
你可以试试这个
txtCompanyID.DataBindings.Add(new Binding("Text", _bsCompany, "CompanyID"));