簡體   English   中英

FileSystemWatcher刪除事件處理程序

[英]FileSystemWatcher remove event handler

出於某種原因,我無法從FileSystemWatcher中刪除事件處理程序。

這就是我所擁有的

void Start()
{
     ivFileSystemWatcher = new FileSystemWatcher();
     ivFileSystemWatcher.Changed += 
        new FileSystemEventHandler(ivFileSystemWatcher_Changed);
}

void Stop()
{
     ivFileSystemWatcher.Changed -= 
        new FileSystemEventHandler(ivFileSystemWatcher_Changed);
     ivFileSystemWatcher.Dispose();
}

當我打電話給開始時,我開始接收更改事件,但是當我呼叫停止時,我希望事件停止,但它們仍在被提升。

您是否嘗試將EnableRaisingEvents設置為false

void Stop() 
{ 
     ivFileSystemWatcher.EnableRaisingEvents = false;

     ivFileSystemWatcher.Changed -=  
        new FileSystemEventHandler(ivFileSystemWatcher_Changed); 
     ivFileSystemWatcher.Dispose(); 
}

沒有看到你的其余代碼,我不相信這是Dispose()的最佳位置......

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM