2012-04-18 4 views
0

私はVisual Studio 2010で作業しています。クラスのコードをいくつかのファイルに分割する方法は?

1つのクラスをいくつかの.csファイルに分割したいと思います。出来ますか?

using System; 
using System.Collections.Generic; 
using System.ComponentModel; 
using System.Data; 
using System.Drawing; 
using System.Linq; 
using System.Text; 
using System.Windows.Forms; 
namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     public Form1() 
     { 
      InitializeComponent(); 
     } 

     int i = 5; 
     private void Form1_Load(object sender, EventArgs e) 
     { 

     } 
    } 
} 

私はpublic partial class Form1に方法public void laugh()を追加しますが、別のファイルにしたいと思います。どうやってするか? Form1.csでそのメソッドを使用したくありません

+2

あなたを止めていますか?それを試しましたか?あなたはどこにいるのですか? – Oded

+0

あなたがこれを望む理由は何ですか?これはあなたのコードを使用しているものを読むのが難しくなります。 (VSからの自動生成された.csは例外です) – RvdK

+0

私はパブリック部分クラスForm1:フォーム のようなことをやっていて、emのいくつかが働いていましたが、別のデザインが作成されました。 it – Patryk

答えて

2

'Form1.Something.cs'ファイルをプロジェクトに追加して、Form1.csに近い状態に保ちます。 Form1.part2.cs

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 // no need to inherit 
    { 
     public void Laugh() { ... } 
    } 
} 
2

(またはファイルを与えることを好きな名前):

は、同じ名前空間とクラス名を使用して、好きなコードを追加

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 
    { 
     public void laugh() 
     { 
     } 
    } 
} 

は、その名前空間を確保し、クラス名は同じです(アクセシビリティとpartial修飾子も同様です)。コードを追加するだけです。また、新しいファイルがプロジェクトの一部であることを確認してください。

0

あなたは自分のプロジェクトに既存のForm1.csと一緒に別のファイルを追加します:)すでに途中でそこにいる - 多分FormMethods.cs?:

public partial class Form1 
{ 
    public void laugh() 
    { 
    ... 
    } 
} 
1

デザイナーを見て、コードを生成しました。それは同じ方法を使用します。
documentationもご覧ください。

1

てみ使用この 最初のファイル

namespace WindowsFormsApplication1 
{ 
public partial class Form1 : Form 
{ 
    public void laugh() 
} 
} 

第二のファイル

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 

    public classForm1() 
    { 
     InitializeComponent(); 
    } 

    int i = 5; 
    private void Form1_Load(object sender, EventArgs e) 
    { 

    } 
    } 
} 
+0

2番目のファイルが部分クラスForm1の一部であるように見えません。 'partial class Form1'でラップします。 – Skalli

1

partialキーワードは、まさにその作業を行います。

partial (Type) (C# Reference)

他のファイルは次のようになります:

public partial class Form1 : Form 
{ 
    public void laugh() 
    { 

    } 
} 
1

は、プロジェクトに新しいCSファイルを追加し、何かの内側に書く:

namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     public void laugh() 
     { 
     } 
    } 
} 

部分名前空間名とクラス名を維持します。

1

あなたはすでにこれを持っています:Form1.csとForm1.designer.cs(デザイナーが生成したもの) もう一つのファイルForm1.testがある場合。CSとは、プロジェクトでこれを含め、その後、部分クラスでラップ:

namespace WindowsFormsApplication1 
{ 
    partial class Form1 
    { 
     public void laugh() 
     { 
      //your stuff 
     } 
    } 
} 
4

は、たとえばForm1.Code.csのために、(それが既に存在しているので、あなたがForm1.csを使用することはできません)、適切な名前のプロジェクトに新しいクラスを追加します。次に、この作品:

using System.Windows.Forms; 
namespace WindowsFormsApplication1 
{ 
    public partial class Form1 : Form 
    { 
     public void laugh() 
     { 
      MessageBox.Show("Haha"); 
     } 
    } 
} 
関連する問題