そのようなデリゲートを持っています:
public delegate void GraphInit(ref DataMedia media);
public delegate void GraphStop(ref DataMedia media);
私はそのようにsmthを使いたい:
void VideoRenderProcess(object sender, VideoRenderingArgs r_args)
{
DataMedia obj_mdata = sender as DataMedia;
switch (obj_mdata.state)
{
case GraphState.Running:
this.Dispatcher.Invoke(new GraphStop(ref obj_mdata));
break;
......
}
}
VideoRenderingArgs
自己設計クラスはどこにありますか:
public class VideoRenderingArgs
{
public string uri { get; set; }
}
// it's just one string, of course I'm planning to add many other details
// which relate to video, but it's other story
GraphStop()
メソッドは次のとおりです。
void GraphStop(ref DataMedia media)
{
if (media.mre_demux_conf != null) media.mre_demux_conf.WaitOne(2000);
lock (this)
{
if (media.i_main_control != null)
{
media.i_main_control.Stop();
media.state = GraphState.Stopped;
}
}
GraphClean();
}
エラーが発生します:
「obj_mdata」は「変数」ですが、使用する場合と使用
ref
しない場合の両方で「メソッド」のように使用されます。
C#でやりたいことをする方法は?