void playerSource_StatusChanged(object sender, EventArgs e) { if (!Dispatcher.CheckAccess()) { Dispatcher.BeginInvoke((Action)delegate { playerSource_StatusChanged(sender, e); }); return; } }