とても簡単なはずなのに(基本的なものが欠けているのではないかと思いますが)、私は今朝ずっと立ち往生しています。私はクラスに次のコードを持っています-
public class myClass
{
private Dispatcher m_Dispatcher;
private void myMethod() { ... }
private void invokeTheMethod(object sender, PropertyChangedEventArgs e)
{
m_Dispatcher.Invoke(myMethod); //XYZ
}
}
ディスパッチャは、myClassのインスタンスが実行されているスレッドに接続されています。invokeTheMethodメソッドが別のスレッドから呼び出され、m_DispatcherのスレッドでmyMethodを実行したいと思います。ただし、このコードを実行しようとすると、XYZで「オブジェクト参照はオブジェクトのインスタンスではありません」という例外が発生します。これは、myMethodをデリゲートの形式で宣言していないためですか?--myMethodをデリゲートとして宣言するさまざまな方法を試しましたが、いずれもコンパイルできません。どんな提案でも大歓迎です。
ありがとう、クリス