gpt4 book ai didi

c# - 字段System.MulticastDelegate._invocationCount不可用C#

转载 作者:行者123 更新时间:2023-12-03 08:48:57 36 4
gpt4 key购买 nike

我尝试使用从userControl到表单的事件,但是在表单构造函数中创建事件时遇到了问题。我不知道哪里失败了。有我的代码。

用户控件

public GameField()
{
InitializeComponent();
button.Click += Button_Clicked;
}

public event EventHandler ButtonClicked;
private void Button_Clicked(object sender, EventArgs e)
{
if (this.ButtonClicked != null) this.ButtonClicked(sender, e);
}

形成
GameField gameField = new GameField(); //Instance of the derived class UserControl       

public Form1()
{
InitializeComponent();
gameField.ButtonClicked += new EventHandler(this.btn_Click);
}

private void btn_Click(object sender, EventArgs e)
{
throw new NotImplementedException();
}

有问题
enter image description here

最佳答案

我认为您想订阅Button_Clicked而不是ButtonClicked中的GameField

button.Click += Button_Clicked;

编辑

我知道,我有一个预感,您有两个 GameField实例。您通过表单设计器添加的一个,可能名为 gameField1,以及您在代码中添加到表单的一个名为 gameField

如果打开 Form1.Designer.cs,是否可以在其中看到 gameField1(或通过设计器添加时输入的名称)?

您可以尝试以下方法:
gameField1.ButtonClicked += new EventHandler(btn_Clicked); // name can be other than gameField1, gameField1 is just the automatically generated name by VS

关于c# - 字段System.MulticastDelegate._invocationCount不可用C#,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46481422/

36 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com