1

これがコード行です...非常にシンプルで、誰にとってもよく知られています...

public event EventHandler<TimeSpan> TimeExtended;

Visual Studio (つまり、Windows) では通常どおり動作しますが、MonoTouch では TimeSpan を使用できません。これは、EventArgs に変換できず、EventArgs から派生した型しか使用できないためです。このジェネリック イベント ハンドラーを mono で使用するにはどうすればよいですか?

ありがとう

4

2 に答える 2

5

タイプ制約が削除された.Net4.5を使用しているため、VisualStudioで機能します。から継承する独自のクラスを定義するだけEventArgsです。追加のデータが必要な場合は、それも含めてください。

public class TimeExtendedEventArgs : EventArgs
{
  public TimeSpan TimeExtended { get; set; }
  public Player Player { get; set; }
}

public event EventHandler<TimeExtendedEventArgs> TimeExtended;
于 2012-12-29T18:36:06.747 に答える
0

このイベントハンドラーを作成しましたが、機能していると思います。

public delegate void GEventHandler<T>(object sender, T args);
于 2012-12-29T18:49:47.547 に答える