仮想イベント&を使用して、それを派生クラスで上書きします。以下はコードスニペットですが、仮想イベントを宣言しているときに警告メッセージが表示されます。仮想イベントの警告メッセージ
using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
namespace ConsoleApplication6
{
class Program
{
static void Main(string[] args)
{
DeriveClass obj = new DeriveClass();
obj.myEvent += new EventHandler(obj_myEvent);
obj.MyFunction();
Console.ReadLine();
}
static void obj_myEvent(object sender, EventArgs e)
{
Console.WriteLine("Event fired.....");
}
}
public abstract class BaseClass
{
// I get warning on this line - Warning 1 The event 'ConsoleApplication6.BaseClass.myEvent' is never used Program.cs
public virtual event EventHandler myEvent;
}
public class DeriveClass : BaseClass
{
public override event EventHandler myEvent;
public void MyFunction()
{
if (myEvent != null)
{
myEvent(this, null);
}
}
}
}
誰でもこの警告の解決方法を教えていただけますか?
アトゥールSureka
また、インターフェイスでイベントを宣言し、そのインターフェイスを実装することもできます。 – dash
@ madd0ベースクラスには多くのクラスとイベントのセットがあります。私は、要件に基づいてクラスを導出する際に、それらのいくつかをオーバーライドしたいと思います。 –
@AtulSureka私はあなたがそのための仮想イベントが必要だとは思わない。私は以下に示唆された答えについていくつもりです。 – madd0