0

在我的 Winforms 应用程序中,我有一个主窗体,其中有一个绑定到数据库实体数据源的 DataGridView。

网格设置为不允许插入。相反,我的表单上有一个按钮,它会启动第二个对话框,在该对话框中进行插入(即,使用比 DataGridView 更友好的 ui)。

插入工作正常.. db 中基础表的查询表明记录已被插入。但是,我似乎无法让主窗体上的 DataGridView 来查看第二个对话框刚刚创建的新数据。

我已经阅读了许多 Stack Overflow q & a's 并尝试了各种解决方案来让 DataGridView 刷新以显示新数据。但没有任何效果。

这一定是普遍情况??有人可以建议一些可行的 VB.NET 代码吗?

谢谢,

巴扎

    Dim qry = From o In mDB.tblFOMTestResults From p In mDB.tblProduct.DefaultIfEmpty _
                                              From c In mDB.tblCalibration _
                Where o.ProductID = p.ID And o.CalibrationID = c.ID _
                Order By o.RunDate, p.ProductName Select _
                o.ID, o.SampleCode, o.RunDate, o.ConditioningDays, o.ConditioningRHAndTemp, _
                o.TestArea, o.EdgeSeal, o.SealedBags, o.FaceSeal, _
                o.MoisturePercentage, o.CalibrationID, o.FYFOMH1, o.FYFOMH2, o.FYFOMH3, _
                o.FYFOMH4, p.ProductName, o.ProductID

    Me.TblFOMTestResultsDataGridView.DataSource = qry
4

2 回答 2

1

尝试绑定到查询的结果而不是查询:

dataGridView.Source = query.Execute(MergeOption.AppendOnly);
于 2012-06-17T22:50:48.543 回答
0

在尝试了很多事情之后,我终于按照以下 SO 答案中的建议完成了这项工作。在 Windows 表单中刷新 DataGridView

于 2012-06-26T00:35:41.780 回答