私は慣れようとしてWeakEventManager
いますが、次のことにつまずきます:
との唯一の違いはA
、コピー/貼り付けエラーを無視してください ;)B
static
nameof
ジェネリックと静的型に関するこの回答を見つけましたが、それで何WeakEventManager
をしているのだろうかA
? どういうわけかnull
、静的イベントのソースとして機能します。
static
なぜイベントが大丈夫なのか、簡単な答えを探していますがstatic class
、TEventSource
突然そうではありません。
コード:
public class A
{
public static event EventHandler Event;
}
public static class B
{
public static event EventHandler Event;
}
public partial class MainWindow : Window
{
public MainWindow()
{
InitializeComponent();
WeakEventManager<A, EventArgs>.AddHandler(null, nameof(A.Event), (s, e) => { });
WeakEventManager<B, EventArgs>.AddHandler(null, nameof(B.Event), (s, e) => { });
}
}
エラー:
エラー CS0718
'B': 静的型は型引数として使用できません