0

私の Winforms アプリには、DataGridView がデータベース エンティティ データソースにバインドされたプライマリ フォームがあります。

グリッドは、挿入を許可しないように設定されています。代わりに、フォームにボタンがあり、挿入が行われる 2 番目のダイアログを開始します (つまり、DataGridView で可能なよりも使いやすい UI を使用します)。

挿入は正常に機能しています.. db の基になるテーブルのクエリは、レコードが挿入されたことを示しています。ただし、プライマリ フォームで DataGridView を取得して、2 番目のダイアログで作成されたばかりの新しいデータを表示できないようです。

私は多くの Stack Overflow の Q & A を読み、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 に答える