1

説明 :

一度作成されたグローバル DataGridView を使用しており、そのグリッド ByRef を複数のユーザー コントロールで共有しています。奇妙なことに、最初のコントロールを追加または初期化すると、そのグリッドが描画され、他のすべてのコントロールは描画されません (確かに、私はその理由が描かれていないことを知っています)

質問: 私が持っているすべてのユーザー コントロールでグローバル データグリッド ビューを強制的に再描画するにはどうすればよいですか ..!!?

DataGridViewデータメンバー/データソースを使用せずにManullyにデータを入力していることに言及します。

4

1 に答える 1

1

わかりました、それは本当に非常に危険です。コントロールは、複数のフォーム/コントロールの親になることを意図していません。データを共有する方がはるかに優れています( などの監視可能なコレクションを介してBindableList<T>、またはDataViewその傾向がある場合)。明らかに、これはデータメンバー/データソースを設定するか、(すべてのグリッドに対して) すべての更新を自分で行うことを意味します。

しかし、真剣に。DataGridView(AFAIKの他のコントロールも)そのように使用することを意図したものではありません。

情報については、VBが C# に匹敵すると仮定すると、とにかくそれは必要ありません...既に参照を (値で) 渡しているだけです。しかし、どちらの方法でも機能しないため、それは重要ではありません。ByRefref

于 2008-12-24T17:26:57.973 に答える