[英]Adding and Populating DataGridViewComboBoxcolumn to Bound Datagridview
[英]Adding a new entity to a bound DataGridView
我有亲子关系的Companies
和Contracts
,在winforms应用程序的两个DataGridViews中显示。 它们都绑定到实体模型的集合。
如何添加新合同?
如果我这样做
Dim c as Company = CompaniesBindingSource.Current c.contracts.Add(New Contract()) context.SaveChanges()
网格不会刷新(即使我在BindingSource上调用.Refresh()
或.ResetBindings()
。我也必须离开所选公司并返回到该公司,以刷新网格。
如果我执行ContractsBindingSource.AddNew()
,则网格将刷新,但数据不会保留到我的实体上下文中。
注意:我的合同托收是我Company
模型的财产:
Public ReadOnly Property activeContracts As SortableBindingList(Of Contract)
Get
Dim list = New SortableBindingList(Of Contract)
For Each contract As Contract In contracts.Where(Function(c) c.isActive).ToList
list.Add(contract)
Next
Return list
End Get
End Property
这有关系吗? 如何强制重新计算属性?
这对我有用:
CompaniesBindingSource.ResetCurrentItem()
这将重新计算“ Contracts
属性,并自动刷新合同网格。
声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.