0

我正在使用 Visual Studio 2010。

我想将一个类分成几个 .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 void laugh()public partial class Form1中,但在不同的文件中。怎么做?我不想在 Form1.cs 中使用该方法

4

10 回答 10

4

为您的项目添加一个具有适当名称的新类(您不能使用Form1.cs,因为它已经存在),例如Form1.Code.cs. 然后这个工作:

using System.Windows.Forms;
namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public void laugh()
        {
            MessageBox.Show("Haha");
        }
    }
}
于 2012-04-18T14:42:15.637 回答
2

可以将“Form1.Something.cs”文件添加到您的项目中,以使其接近“Form1.cs”。

使用相同的命名空间和类名并添加您喜欢的任何代码:

namespace WindowsFormsApplication1
{
    public partial class Form1 // no need to inherit
    {
        public void Laugh() { ... }
    }
}
于 2012-04-18T14:37:29.690 回答
2

Form1.part2.cs(或您要为文件命名的任何名称)中:

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

确保命名空间和类名相同(以及可访问性和partial修饰符)并添加您的代码。还要确保新文件是项目的一部分。

于 2012-04-18T14:38:18.047 回答
2

部分类型定义MSDN 参考。

于 2012-04-18T14:39:12.303 回答
1

向您的项目添加一个 CS文件并在其中写入如下内容:

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

使用partial维护命名空间名称和类名称。

于 2012-04-18T14:39:37.310 回答
1

你已经有了这个:Form1.cs 和 Form1.designer.cs(设计师生成的东西)如果你有另一个文件 Form1.test.cs 并将它包含在你的项目中,然后将它包装在一个部分类中:

namespace WindowsFormsApplication1
{
    partial class Form1 
    {
        public void laugh() 
        {
            //your stuff
        }
    }
}
于 2012-04-18T14:40:40.557 回答
1

看看设计器生成的代码。它使用相同的方法。
另请查看文档

于 2012-04-18T14:38:26.790 回答
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)
     {

     }
    }
}
于 2012-04-18T14:38:36.983 回答
1

partial关键字正是这样做的。

部分(类型)(C# 参考)

另一个文件看起来像这样:

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

    }
}
于 2012-04-18T14:39:05.273 回答
0

您已经完成了一半 :) 只需在现有的 Form1.cs 旁边添加另一个文件到您的项目中 - 也许是 FormMethods.cs?:

public partial class Form1 
{
  public void laugh() 
  {
    ...
  }
}
于 2012-04-18T14:38:18.803 回答