KyKiske22 2015-07-01 01:48 采纳率: 0%
浏览 3922

问个 this.Invoke((EventHandler) delegate{/*委托内容*/})

这句话是卸载我看MSDN介绍说:EventHandler是表示将处理不包含事件数据的事件的方法,但我这里的委托内容是将获取的参数转为另一个参数,生成数据了。和EventHandler的官方说法矛盾啊?刚查了下,SerialDataReceivedEventArgs用于传递数据,但还是不理解this.Invoke((EventHandler) delegate{/*委托内容*/}) 这句话为什么可以用?delegate是委托。

  • 写回答

1条回答 默认 最新

  • save4me 2015-07-04 11:32
    关注

    EventHandler 委托的签名是
    public delegate void EventHandler(Object sender, EventArgs e);
    其中第二个参数是EventArgs表示包含事件数据的类的基类,并提供要用于不包含事件数据的事件的值。只有一个Empty字段。

    EventHandler 是一个预定义的委托,专用于表示不生成数据的事件的事件处理程序方法。

    **如果事件生成数据,则必须提供自己的自定义事件数据类型,并且必须要么创建一个委托,其中第二个参数的类型为自定义类型,
    要么使用泛型 EventHandler 委托类并用自定义类型替代泛型类型参数。
    **

    因为你上面的代码看,你好像不是使用EventHandler这样的泛型委托,所以检查一下你使用的是自定义委托,而并不是EventHandler。

    评论

报告相同问题?

悬赏问题

  • ¥15 微信小程序协议怎么写
  • ¥15 c语言怎么用printf(“\b \b”)与getch()实现黑框里写入与删除?
  • ¥20 怎么用dlib库的算法识别小麦病虫害
  • ¥15 华为ensp模拟器中S5700交换机在配置过程中老是反复重启
  • ¥15 java写代码遇到问题,求帮助
  • ¥15 uniapp uview http 如何实现统一的请求异常信息提示?
  • ¥15 有了解d3和topogram.js库的吗?有偿请教
  • ¥100 任意维数的K均值聚类
  • ¥15 stamps做sbas-insar,时序沉降图怎么画
  • ¥15 买了个传感器,根据商家发的代码和步骤使用但是代码报错了不会改,有没有人可以看看