次の方法で共有


コンパイラ エラー CS0071

更新 : 2007 年 11 月

エラー メッセージ

イベントのインターフェイスを明示的に実装するには、イベント アクセサの構文を使用する必要があります。

インターフェイス内で宣言されたイベントを明示的に実装するときは、通常はコンパイラによって提供されるイベント アクセサ (add および remove) を手動で提供する必要があります。アクセサ コードは、インターフェイス イベントをクラス内の別のイベント (このトピックで後述) または固有のデリゲート型に接続できます。詳細については、「方法 : インターフェイス イベントを実装する (C# プログラミング ガイド)」を参照してください。

使用例

次の例では、CS0071 エラーが生成されます。

// CS0071.cs
public delegate void MyEvent(object sender);

interface ITest
{
    event MyEvent Clicked;
}

class Test : Itest
{
    event MyEvent ITest.Clicked;  // CS0071

    // try the following code instead
/*
private MyEvent clicked;

    event MyEvent Itest.Clicked
    {
        add
        {
            clicked += value;
        }
        remove
        {
            clicked -= value;
        }
    }
*/
    public static void Main() { }
}