У меня есть следующая ситуация (WPF; С#):
1) Я инициализирую камеру и запускаю обработчик событий, который автоматически отображает живое изображение в фоновом режиме
2) После этого я хотел бы снова закрыть этот открытый обработчик событий, если, например, пользователь нажимает кнопку. Вопрос: Как я могу это сделать?
Мой код:
private void InitCamera(int CamID)
{
...
Camera.EventFrame += onFrameEventFocusCam; // start event
...
}
private void onFrameEventFocusCam(object sender, EventArgs e)
{
...
Dispatcher.Invoke(new Action(() =>
{
// Convert bitmap to WPF-Image
var bmp = new Bitmap(bitmap);
var hBitmap = bmp.GetHbitmap();
System.Windows.Media.ImageSource wpfBitmap = System.Windows.Interop.Imaging.CreateBitmapSourceFromHBitmap(
hBitmap, IntPtr.Zero, Int32Rect.Empty, BitmapSizeOptions.FromEmptyOptions());
image_fokus.Source = wpfBitmap;
image_fokus.Stretch = System.Windows.Media.Stretch.UniformToFill;
DeleteObject(hBitmap);
bitmap.Dispose();
}
...
}
Ты пробовал:
Camera.EventFrame -= onFrameEventFocusCam;