private static void Instance_DeviceAdded(object sender, DeviceAddedEventArgs e) { var t = Thread.CurrentThread.ManagedThreadId; Application.Current.Dispatcher.Invoke(new Action(() => { var mainWindow = (MainWindow)Application.Current.MainWindow; mainWindow.ListBoxTest.Items.Add("Device added: Serial number - " + e.SerialNumber + " : thread - " + t); mainWindow.Devices.Add(e.Device); })); }
public void Add(Device device) { lock (lockObj) { devices.Add(device); DeviceAddedEventArgs e = new DeviceAddedEventArgs() { SerialNumber = device?.SerialNumber, Device = device }; OnDeviceAdded(e); } }
protected virtual void OnDeviceAdded(DeviceAddedEventArgs e) { DeviceAdded?.Invoke(this, e); }