小编Dmi*_*huk的帖子

尝试订阅事件时,为什么在转换时出错?

我对事件的理解有问题。由于某些原因,我无法订阅我的活动。视觉工作室说

错误CS0029无法将类型'void'隐式转换为'FileSystemWatcher.FileSystemWatcher.Handler'FileSystemWatcher C:\ Users \ Diord \ source \ repos \ FileSystemWatcher \ FileSystemWatcher \ Program.cs 16活动

当我这样做

fileSystemWatcher.Changed + = ShowMessage();

class Program
{
    static void Main(string[] args)
    {
        FileSystemWatcher fileSystemWatcher = new FileSystemWatcher("C:\\");
        //next line is highlighted
        fileSystemWatcher.Changed += ShowMessage();
    }

    public void ShowMessage()
    {
        Console.WriteLine("Hello Event!");
    }
}
class FileSystemWatcher
{
    readonly string _path;

    private string[] Files { get; set; }

    public FileSystemWatcher(string path)
    {
        _path = path;
    }

    public delegate void Handler();

    public event Handler Changed; …
Run Code Online (Sandbox Code Playgroud)

c#

2
推荐指数
1
解决办法
35
查看次数

标签 统计

c# ×1