Form.cs的更改没有更新Form.cs [设计]

时间:2012-05-31 17:38:39

标签: c# visual-studio

我是Visual Studio的新手,我只是搞乱控件来看看事情是如何运作的。我制作了一个只有一个按钮的表单,当按下时,只需将“Hello World”打印到屏幕上即可。为了尝试更复杂的东西,我删除了该按钮,并在表单中添加了各种其他工具。但是,Form.cs文件中的代码未更新以反映设计的这些更改,我无法手动更新它。

感谢任何建议。

问候。

7 个答案:

答案 0 :(得分:2)

如果您查看Form1.Designer.cs(假设您的表单名为Form1),您将看到通过构建应用程序生成的所有代码的列表,在那里您将看到您的按钮名称,如果按钮是删除你应该能够安全地删除评论之间的代码。

答案 1 :(得分:1)

您可以在 Form1.Designer.cs 文件中查看更改 代码在这些行之下......

    #region Windows Form Designer generated code

    /// <summary>
    /// Required method for Designer support - do not modify
    /// the contents of this method with the code editor.
    /// </summary>

要手动更新,只需调用manual_update()。

manual_update()
{

        Button b = new Button();
        b.Text = "new button";
        b.Size = new Size(100, 20);
        b.Location = new Point(20, 20);
        this.Controls.Add(b);
}

你几乎可以手动完成所有事情。

答案 2 :(得分:0)

另外尝试重建..如果你从表单中删除它有时VS不会从设计器中删除该代码..你将不得不手动删除它/更新它..还要确保你没有任何编译错误

如果您有错误......在更改错误之前,可能无法显示更改。

答案 3 :(得分:0)

由于您提到在前端表单文件中添加了其他工具,因此请确保表单中的Web控件已连接到您拥有的任何事件处理程序。

此外,请确保您重新编译/重新构建页面,仅用于进行健全性检查以及是否需要。

答案 4 :(得分:0)

有一个Form1.Designer.cs文件,设计器代码位于此文件中。如果您无法在解决方案资源管理器中看到该文件,那么顶部的解决方案资源管理器窗格上会显示一个按钮,即view files。点击它。

Visual Studio为您提供了控件的拖放功能,只需右键单击控件并单击“属性”即可更改属性。实际上,您可能不需要更改设计器代码。但你可以随心所欲......

答案 5 :(得分:0)

如果您的Button发生了OnClick事件,则在删除Button时不会删除该事件。 Visual Studio假定此代码可能在其他地方使用,而不是数据破坏性的。

每次删除有事件的控件时,它们都会保留。您必须手动完成并清理代码。

编辑:

要为较新的控件显示“新代码”,您必须双击该按钮以生成该控件的默认事件,或者进入该控件的属性并为其生成事件的代码。 / p>

答案 6 :(得分:0)

如果我正确理解了您的问题,那么添加控件和更改控件属性的代码都是自动生成的,例如,在Form1.Designer.cs中。 除Visual Studio外,通常不会触及此文件。

如果要手动添加控件,则应在InitializeComponent()调用后或在Form_Load事件之类的事件中在Form1.cs中执行此操作。以下是在表单加载事件中添加按钮的示例:

private void Form_Load(object sender, EventArgs e)
{
    Button b = new Button();
    b.Left = 10;
    b.Top = 10;
    b.Text = "Button!";
    this.Controls.Add(b); //'this' would be the form self-pointer
}

事件不同。这些将在Form1.cs中发生变化,但对设计器所做的更改并不总是反映在事件的代码隐藏文件中。这是VS的本质。有时删除按钮不会从代码中删除事件,反之亦然。

您可能必须在代码文件中手动删除控件中的事件。

通常可以通过更改设计器中的控件来强制添加控件的代码,但是当控件名称更改时,至少有一件不会更改的事件是事件名称。例如,如果按钮被调用button1并链接到点击事件button1_click(object sender, EventAgrs e),则将按钮名称更改为button12345将不会更改事件名称。

您可以通过打开控件属性并单击闪电来更改设计器中的链接事件。这显示了控件的所有事件。双击事件字段将转到链接事件,或者如果字段为空,则生成事件。此对话框还允许多个控件链接到单个事件。

以下是事件属性对话框的示例: Events dialog

您可能只需要添加控件,链接事件,删除控件等等,以了解更改何时更改设计器和代码隐藏以及更改未更新时。