VS2015 C#WPF:如何添加事件处理程序



我使用下面的代码在C#中添加一个事件处理程序。它始终适用于VS2017或VS2019。

async void deviceChangedHandler(object s, EventArgs e) => await DevicesChangedEventAsync();
_deviceWatcher.DeviceChanged += deviceChangedHandler;

今天我在VS2015中使用它。我得到错误:名称"async"在当前上下文中不存在。不确定出了什么问题。有人能帮忙吗?

直到VS 2017支持的C#7.0才引入本地函数。

当然,你想做的事情可以简化为:

_deviceWatcher.DeviceChanged += (_, args) => DevicesChangedEventAsync();

它除了更短之外,还可以工作到C#4.0(VS 2010(。在这里,更新的语言功能实际上没有必要,甚至没有帮助。

最新更新