Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/csharp/328.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
C# 单击按钮时如何显示窗体?_C#_Winforms_.net - Fatal编程技术网

C# 单击按钮时如何显示窗体?

C# 单击按钮时如何显示窗体?,c#,winforms,.net,C#,Winforms,.net,在我用C#编写的应用程序中,我右键单击解决方案资源管理器上的项目,然后转到“添加”,然后选择Windows窗体和选定Windows窗体,然后按“确定” 然后我将表单命名为MessageForm,而不是默认名称(Form2) 现在,在我的表单一中,我添加了一个按钮,我希望这个按钮在我单击它时显示另一个表单(MessageForm),因此我的代码是: MessageForm Frm = new MessageForm(); Frm.Show(); 但是出现了一个错误,我无法编译代

在我用C#编写的应用程序中,我右键单击解决方案资源管理器上的项目,然后转到“添加”,然后选择Windows窗体和选定Windows窗体,然后按“确定”

然后我将表单命名为MessageForm,而不是默认名称(Form2)

现在,在我的表单一中,我添加了一个按钮,我希望这个按钮在我单击它时显示另一个表单(MessageForm),因此我的代码是:

 MessageForm Frm = new MessageForm();
        Frm.Show();
但是出现了一个错误,我无法编译代码,因为我得到了以下信息:

 Error  1   The type or namespace name 'MessageForm' could not be found (are you missing a using directive or an assembly reference?)

这怎么可能呢?

我怀疑您只是将
Form2.cs
文件重命名为
MessageForm.cs
,而不是该文件中的实际类型名。在单击“添加Windows窗体”对话框中的“确定”之前,应将
Form2.cs
替换为
MessageForm.cs
。这样可以正确命名文件和类型。但是,如果表单已经存在,您可以导航到相应的文件并替换:

public partial class Form2 : Form
{
    public Form2()
    {
        InitializeComponent();
    }
}
与:


重命名Yes时始终重构代码,不要忘记
MessageForm.Designer.cs
。您可能还必须手动更改那里的类名。
public partial class MessageForm : Form
{
    public MessageForm()
    {
        InitializeComponent();
    }
}