0

2 つの異なるデータセットに接続された dgv を持つ 2 つのフォームがあります。データセットの 1 つでデータを変更すると、他のデータを更新する必要があります (解決策が最適ではないことはわかっています)。再バインド、更新の多くのさまざまな方法を試した後、次のコードが機能していることがわかりました。

Private Sub View_Activated(Byval sender as Object, _ Byval e as System.Eventargs) MyBase.Activated Table_Load(Nothing, Nothing) End Sub

Private Sub View_Load(byval sender as Object, _ byval e as system.eventargs) Mybase.Load Me.TableAdapter.Fill(Me.Dataset.Table) End Sub

dgv1 を変更した後、これらのコマンドで dgv2 の変更を確認できます。しかし、mybase.activated を mybase.shown などに変更すると、機能しなくなります。どうやらこれは、イベントをアクティブにした場合にのみ機能するようですが、理由がわかりませんか? ところで。アクティブ化イベントがあるときに dgv が新しいデータで更新される理由がまったくわかりませんが、アクティブ化イベントをコメントアウトすると、dgv は更新されません。

4

1 に答える 1

0

フォーム ウィンドウがフォーカスされると、フォームの Activated イベントが発生します。Load イベントは、フォームが最初に読み込まれたときにのみ発生します。

1 つのフォームに変更を加え、フォーカスを 2 番目のフォームに変更すると、Activated が発生します。

于 2013-07-29T22:16:52.103 に答える