継承して改善したいアプリケーションがあります。多くのコードを削減できる領域の 1 つはDrag and Drop
処理です。その中で、アプリケーションは同じタイプのオブジェクトのドラッグ アンド ドロップを処理しますが、そのコードは繰り返され (若干の違いがあります)、多くのイベント ワイヤリング コードが必要です。私が達成したいことは次のとおりです。
- コンポーネント (a
UserControl
) には、ドラッグおよび/またはドロップをサポートするアイテムのタイプを (フォーム内で) 宣言する方法が必要です。 - コンポーネントには、ドラッグされたアイテムを受け入れたことをブロードキャストする方法が必要です
- ドラッグが開始されると、すべてのアイテム (ドラッグされているアイテムを受け入れることができる) に、ドラッグが開始されたことが通知されます。
UserControl
ドラッグは、(の)含まれているコントロールから開始できます。
そうすれば、ホスト フォームを同じ定型コードで装飾することなく、共通のクラス内でオブジェクトの移動とコピーの両方を処理できます。
で達成することは可能WinForms
ですか?そのためにすでに存在するコードはありますか?