これは本当に基本的なことだと思いますが、この問題に問題があります。Processオブジェクトを使用していて、 DataReceivedEventHandler. 次に、このイベント ハンドラーは別のメソッド (この場合は "DoSomething") に委任します。引数の署名は (Object sender, DataReceivedEventArgs args) です。私がする必要があるのは、何かを拡張するか、追加情報を渡す何かを提供することです。これが私の現在のコードです:
// an object of some type
MyCustomObject obj = new MyCustomObject();
// set up obj and Process
process.OutputDataReceived += new DataReceivedEventHandler(DoSomething);
public void DoSomething(Object sender, DataReceivedArgs args)
{
// do some stuff, however, I need the "obj" object passed in for work
}
これは本当に些細なことだと思いますが、どのように進めればよいかわかりません。「EventArgs」のサブクラス化について読んだことがありDataReceivedArgsExtendedますが、DataReceivedEventHandler は DataReceivedArgs を持つメソッドを期待しているため、それがどのように役立つか、または「DoSomething」の署名を変更してパラメーターを受け入れる方法さえわかりません