Привет Я довольно новичок в C# и тестирую простую программу openFileDialog. Код, который я сейчас написал, кажется, выполняет свою работу, однако вывод производится дважды. Любая помощь будет оценена по достоинству.Почему это код C#, производящий вывод дважды
Мой код:
watcher.Changed += new FileSystemEventHandler(OnChanged);
watcher.Created += new FileSystemEventHandler(OnChanged);
watcher.Deleted += new FileSystemEventHandler(OnChanged);
watcher.EnableRaisingEvents = true;
}
private void OnChanged(object source, FileSystemEventArgs e)
{
MessageBox.Show("copying done");
StreamReader inStream = new StreamReader(destFile);
string line;
string[] lineSplit;
bool errorFound = false;
while ((line = inStream.ReadLine()) != null)
{
lineSplit = line.Split(' ');
for (int i = 0; i < lineSplit.Length; i++)
{
if (lineSplit[i] == textBox2.Text)
{
errorFound = true;
MessageBox.Show("Error found in " + e.Name);
MessageBox.Show("Exiting");
break;
}
}
}
inStream.Close();
}
Выход:
Copying Done
File: ..Changed
Copying Done
File: ..Changed
Просто интересно, почему это печать в два раза?
Может быть связан с [этот вопрос] (http://stackoverflow.com/questions/1764809/filesystemwatcher-changed-event-is-raised-twice) – stuartd