Silverlight的 - 停止查询完成事件执行一次
问题描述:
后,我有一个foreach循环,低于:Silverlight的 - 停止查询完成事件执行一次
foreach (var rec in lstPRSCRPT)
{
var OrderItemQuery = GV.dbContext.Load(GV.dbContext.GetOrdritemsQuery (rec.PresNo));
OrderItemQuery.Completed += new EventHandler(OrderItemQuery_Completed);
}
在OrderItemQuery_Completed情况下,为每个呼叫回来,我有一些计算发现,如果达到certian条件。如果是这样,我不想再收到任何进一步的OrderItemQuery_Completed回调。有没有办法可以做到这一点?有什么办法可以阻止OrderItemQuery_Completed被触发。
我unscubscirbed事件,我得到一个eror如图图:
答
你可以从这个事件的处理程序是这样取消:
private void OrderItemQuery_Completed(object sender, ...)
{
var query = (OrderItemsQuery)sender;
query.Completed -= OrderItemQuery_Completed;
....
}
我unscubscirbed事件和我得到一个错误,如图片 – sony
@sony - 用代码中的OrderItemQuery变量替换它,也就是说这个下划线的东西必须是查询对象类型的名称(它具有'Completed'事件)。 –
类似于aType = OrderItemQuery.GetType(); var query =(aType)sender; query.Completed - = OrderItemQuery_Completed; – sony