Я пытаюсь создать диалог из WindowsAPICodePack в C #, но при загрузке выдает исключение, что вызывающий поток не может получить доступ к объекту.
Exception: System.InvalidOperationException: The calling thread cannot access this object because a different thread owns it.
at System.Windows.Threading.Dispatcher.VerifyAccess()
at System.Windows.Window.get_CriticalHandle()
at System.Windows.Interop.WindowInteropHelper.get_CriticalHandle()
at Microsoft.WindowsAPICodePack.Dialogs.CommonFileDialog.ApplyNativeSettings(IFileDialog dialog)
at Microsoft.WindowsAPICodePack.Dialogs.CommonFileDialog.ShowDialog()
Код, который создает исключение:
CommonOpenFileDialog dialog = new CommonOpenFileDialog();
dialog.IsFolderPicker = true;
CommonFileDialogResult result = dialog.ShowDialog();
Я пытался использовать Dispatcher.Invoke, но он по-прежнему выдавал ту же ошибку.Если я использую обычный класс BrowserFolderDialog, он загружается, но, скорее всего, этот не загружается, потому что он из другого DLL-файла.Как создать диалог в одной и той же теме?