c# - 如何将变量传递给 C# 中的事件?

标签 c# .net

我正在使用 FileSystemWatcher 在 Changed 事件中,我想传递一个整型变量。

例如

int count = someValue;
 FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = "C:\temp";
watcher.Changed += new FileSystemEventHandler(fileSystemWatcher_Changed);

在fileSystemWatcher_Changed上,我想取计数值,然后做一些工作。 但我如何获得该值。

如果我将 count 设为全局变量,它将无效,因为每个文件更改事件都会对 count 进行更改,并且它是从用户传递的。

最佳答案

最简单的方法是使用 lambda 表达式:

watcher.Changed += (sender, args) => HandleWatcherChanged(count);

如果方法想要更新值,听起来您可能希望通过引用传递 count

关于c# - 如何将变量传递给 C# 中的事件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10863471/

相关文章:

.net - 调用 .net webservice 时出现问题?

c# - Process.Start 在 .net 核心中给出文件未指定错误

c# - 无法将类型字符串隐式转换为 int

c# - Twitterizer - 搜索 API 示例

.net - 从数据库中显示用户数量的最快方法?

.net - .net UrlEncode-小写问题

c# - ASP.NET MVC 的路由调试器

c# - 从 ASP.NET Core 中的 Controller 操作运行后台任务

c# - 通过反射表示类型 Func<dynamic, object>

c# - 在文件夹中查找具有相同名称但扩展名不同的文件