我正在学习如何在 C# 中使用自定义事件,但我遇到了一些错误,我得到“非静态字段、方法或属性需要对象引用”的粗体字
所以我试着按照这个
但是案例 1 无法尝试,因为 TypeChanged 已经是一个非静态方法(我认为),在案例 2 中我得到“不可能将 BicycleType 作为实例引用,将其限定为类型”
public class Bicycle
{
public event EventHandler TypeChanged;
private string type;
...
public string BicycleType {
get { return this.type; }
set {
this.type = value;
if (this.TypeChanged != null)
this.TypeChanged( this, new EventArgs() );
}
}
public Bicycle() {}
class Program
{
static void Main(string[] args)
{
Console.WriteLine("heila!");
Bicycle istanza = new Bicycle();
istanza.TypeChanged += new EventHandler(**istanza_TypeChanged**);
istanza.BicycleType = "io";
Console.WriteLine("io");
}
void istanza_TypeChanged(object sender, EventArgs e) {
Console.WriteLine("rofkd");
}
}
我遵循的教程告诉我我可以使用事件“as”方法,也许我在这里错了?代码与教程代码完全相似
对不起我的英语不好,提前感谢