步骤1:创建C# Windows窗体应用程序项目
步骤2:在窗体中添加一个按钮、标签控件和一个面板,按钮和标签在面板之外:
第三步:双击Button控件并添加以下代码:
private void button1_Click(object sender, EventArgs e)
{
if (label1.Visible == true)
{
label1.Visible = false;
}
else
{
label1.Visible = true;
}
}
第4步:运行应用程序,点击button 1-> label 1消失。
第5步:停止应用程序,返回表单设计。剪切按钮控件并粘贴到面板中(不绘制拖放):
第6步:再次运行应用程序,点击按钮,代码不起作用。
为什么按钮控制代码不起作用?如何在不重新编码的情况下修复它?
2条答案
按热度按时间cbeh67ev1#
在控件和事件处理程序方法之间创建了一个链接。剪切控件时,实际上是删除了它,这样链接就被删除了。粘贴控件时,链接不会自动重新创建,因为没有理由这样做。如果您想要恢复链接,您需要自己重新创建它。为此,选择控件,打开 Properties 窗口,单击 Events 按钮,然后从相应事件的下拉列表中选择现有方法。
一个更好的解决方案是不要在第一时间剪切和粘贴。相反,拖放。当您这样做时,控件永远不会被删除,因此事件处理程序注册也永远不会被删除。请注意,您还可以使用 * 文档大纲 * 窗口将子控件移入或移出容器。您可能仍然需要通过拖放或在 * 属性 * 窗口中调整它们的位置。
顺便说一句,如果你想看到剪切和粘贴操作前后的区别,只要打开表单的设计器代码文件即可。作为测试,向窗体中添加两个
Button
控件并双击每个控件以创建Click
事件处理程序。剪切其中一个控件,然后再次粘贴,然后查看每个控件的设计器代码。您将能够看到一个事件处理程序的注册,而另一个事件处理程序缺少了。ctzwtxfj2#
也许你有一个按钮,你的功能不工作请分享代码