10
public partial class Form1 : Form

この宣言のパーシャルはどういう意味ですか? Form を継承するクラス Form1 があることは理解しています。しかし、部分的な意味は何ですか?

4

2 に答える 2

25

クラスの定義を 2 つ以上の個別のファイルに分割できます。

詳細については、このMSDN 記事「部分クラス定義」を参照してください。

クラス、構造体、またはインターフェイスの定義を 2 つ以上のソース ファイルに分割することができます。各ソース ファイルにはクラス定義のセクションが含まれており、アプリケーションのコンパイル時にすべての部分が結合されます。クラス定義を分割することが望ましい状況がいくつかあります。

  • 大規模なプロジェクトで作業する場合、クラスを別々のファイルに分散すると、複数のプログラマーが同時に作業することができます。
  • 自動生成されたソースを使用する場合、ソース ファイルを再作成しなくてもコードをクラスに追加できます。Visual Studio は、Windows フォーム、Web サービス ラッパー コードなどを作成するときにこのアプローチを使用します。Visual Studio によって作成されたファイルを編集しなくても、これらのクラスを使用するコードを作成できます。

フォームを作成するときの Visual Studio の既定の動作について言及している可能性があります。これにより、フォームの定義を、ユーザーが所有して変更できるファイルと、Visual Studioが所有するファイル (Form1.Designer.cs) の間で分割できます。これにより、Visual Studio 2002 および 2003 で見られた、開発者と IDE が常に互いの足を踏み入れて編集を行っていた多くの問題を回避できます。

于 2010-10-05T06:03:58.760 に答える
4

これにより、コンパイル時に 1 つのクラスに結合されるソース ファイル内の部分的なクラス定義が許可されます。あなたの場合、クラスコードの半分はコードジェネレーターによって自動生成され、部分的なクラス宣言を含むファイルに隠されています(そこには多くのコードがあります)。この部分的な定義にコードを入力できるように、部分的なクラス定義を含む白紙の状態が提供されるため、コンパイル時に、自動生成されたコードとコードがクラス Form から派生した単一のクラスに結合されます。 ビジュアルデザイナーなどで機械のコードと人間のコードを組み合わせて、配管の退屈なコードを書かずにやりたいことに集中できるようにするのは、一般的な方法です。

于 2010-10-05T06:05:22.563 に答える