5

共通のテキスト ボックスとその他のユーザー入力コントロールのセットを持つ .net Windows アプリにいくつかのフォームがあります。各フォームのルック アンド フィールは同じですが、各フォームは異なるデータベース テーブルに読み込んで保存する必要があります。

コントロールをベース フォームに配置して継承するか、ユーザー コントロールを作成して各フォームにドロップする方がよいでしょうか。

4

4 に答える 4

1

私は通常、より柔軟な UserControls を好みます。フォームのコンテキスト、またはその他の視覚的なコンテキストで使用して、データを表示または変更できます。UI デザインを別のダイアログから変更して、メイン フォーム内のインライン コントロールなどに何かを編集しなければならないケースがいくつかありました。

それ以外は好みの問題だと思います。

于 2008-10-12T18:20:00.430 に答える
0

イベントに接続された使いやすいユーザーコントロールの背後にあるロジックによって異なります。共通のタスクがある場合は、基本クラスのサーバーコントロールを使用できます。

于 2012-03-05T13:42:38.033 に答える
0

場合によります。複合モデル (ユーザー コントロールを使用) はよりクリーンですが、コントロールは呼び出し元のフォームを認識することができないため、ロジックをイベントとして渡す必要があります。これにより、ロジックが重複する場合があります。

継承を使用すると、基本クラスで共通コードを実装し、サブクラス フォームでいくつかのオーバーライドを実装して、柔軟な相互作用を実装できます。しかし、それには、サブクラスのすべての実装者が基本クラスのソース コードを認識している必要があり、混乱を招く可能性があります。

于 2008-10-12T18:20:20.167 に答える
0

状況に応じて、両方の方法を使用します。変更せずにフォームにドロップするだけの機能的な LOGIC がある場合は、UserControls が適切だと思います。ただし、複数のフォーム間で共通の UI を複製して拡張するだけの場合は、おそらく視覚的な継承の方が適しています。

于 2008-10-12T20:10:26.027 に答える