FileSystemWatcher и Timer не работают как надо - C#
Формулировка задачи:
Пишу код
Запускаю, добавляю в папку Records файл -- ничего не происходит
Делаю в данном коде совсем небольшое изменение:
После чего MessageBox'ы с timer'а начинаются сыпаться как следует.
Объясните пожалуйста в чем дело? Ну и извечный вопрос -- подскажите новичку, как передать параметр в timer?
namespace watcher
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = @"C:\Records";
watcher.Created += new FileSystemEventHandler(onFileCreate);
watcher.EnableRaisingEvents = true;
}
private void onFileCreate(object source, FileSystemEventArgs e)
{
BackgroundWorker bw = new BackgroundWorker();
bw.DoWork += (s, a) =>{
Timer tm = new Timer();
tm.Interval = 1000;
tm.Tick += (q, w) =>{
MessageBox.Show("");
};
tm.Start();
};
bw.RunWorkerAsync();
}
}
}namespace watcher
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void Form1_Load(object sender, EventArgs e)
{
FileSystemWatcher watcher = new FileSystemWatcher();
watcher.Path = @"C:\Records";
watcher.Created += new FileSystemEventHandler(onFileCreate);
watcher.EnableRaisingEvents = true;
}
private void onFileCreate(object source, FileSystemEventArgs e)
{
BackgroundWorker bw = new BackgroundWorker();
bw.DoWork += (s, a) =>{
Timer tm = new Timer();
tm.Interval = 1000;
tm.Tick += (q, w) =>{
MessageBox.Show("");
};
tm.Start();
/*ДОБАВЛЯЮ ТОЛЬКО ЭТО*/MessageBox.Show("");/*ДОБАВЛЯЮ ТОЛЬКО ЭТО*/
};
bw.RunWorkerAsync();
}
}
}Решение задачи: «FileSystemWatcher и Timer не работают как надо»
textual
Листинг программы
bw.DoWork += (sender1, eventArgs) => MessageBox.Show(eventArgs.FullPath);