public void Dispose() { this.handDataSource.NewDataAvailable -= new Core.NewDataHandler<HandCollection>(handDataSource_NewDataAvailable); foreach (var device in this.touchDevices.Values) { device.Dispose(); } }