在c#中将事件放到其他事件中

本文关键字:事件 其他 | 更新日期: 2023-09-27 18:05:38

我最近问了一个问题,但我不太清楚。因此,我将尝试用一些代码更好地解释。

所以,我正在制作一个有两种模式的空白地图,你可以用两个单选按钮在模式之间切换。

我想这样写:

private void hamburgButton_Click(object sender, EventArgs e)
{
      city = "Hamburg";
      textBoxStadt.Show();
      okButton.Show();     
}

Inside this:

private void gyakRadioButton_CheckedChanged(object sender, EventArgs e)
{ 
}

但是,当我这样做时,我得到错误,指出缺少大括号。

我该怎么办?

编辑:这是完整的代码:

namespace Német_vaktérkép_1._2
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
        private void gyakRadioButton_CheckedChanged(object sender, EventArgs e)
        { 
           private void hamburgButton_Click(object sender, EventArgs e)
           {
               city = "Hamburg";
               textBoxStadt.Show();
               okButton.Show();
           }
       }            
    }
}

编辑2:好的,我想做的是在空白地图中有两种不同的模式。一个是"学习"模式,一个是"询问"模式,它们会考验你。当你选择学习单选按钮时,点击一个按钮,它会显示它的名字,但如果你选择询问单选按钮,会出现一个文本框,你必须输入城市的名字,它会检查你是否正确。我现在有两个不同的程序来做这个,我正在尝试把它们结合起来。

在c#中将事件放到其他事件中

你应该解释你实际上想要实现什么,而不是你是如何实现它的。您试图实现它的方式(无论"它"是什么)没有意义,因为您不能将一个方法放在另一个方法中。没错,那些是方法,不是事件。它们是事件处理程序,即在引发事件时执行的方法。

我假设你真正想做的是当RadioButton被选中时"点击"Button。在这种情况下,您有两个选项:

  1. ButtonClick事件处理程序中取出代码,并将其放入自己的方法中,然后从两个事件处理程序中调用该方法。
  2. 在另一个事件处理程序中调用ButtonPerformClick方法来引发Click事件,从而执行Click事件处理程序。