【问题标题】:Data Binding from Binding source来自绑定源的数据绑定
【发布时间】:2013-03-25 09:44:00
【问题描述】:

在我的 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");

【问题讨论】:

  • 试试看,希望会发生。

标签: c# data-binding datagridview bindingsource


【解决方案1】:

试试这个。



    txtCompanyID.DataBindings.Add("Text", dgvCompany.DataSource, "CompanyID");

【讨论】:

    【解决方案2】:

    好的,我是这样做的; (忘记用我如何解决这个问题来更新问题)

    _listOfCompany.Remove(company);
    _bsCompany.ResetBindings(true);
    

    这将重置控件和数据源之间的绑定

    【讨论】:

      【解决方案3】:

      你可以试试这个

      txtCompanyID.DataBindings.Add(new Binding("Text", _bsCompany, "CompanyID"));
      

      【讨论】:

        猜你喜欢
        • 2014-10-24
        • 2017-09-30
        • 1970-01-01
        • 1970-01-01
        • 2011-10-21
        • 2013-05-19
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        相关资源
        最近更新 更多