Dispatcher.BeginInvoke, пытаюсь использовать лямбда-выражение для получения набора строк из текстового блока, но получаю ошибку преобразования

Я пытаюсь вызвать выбранный элемент списка с помощью кнопки, а не метод listbox.selecteditemchanged в wpf. Поэтому, когда я пытаюсь

string yadda = listbox.SelectedItem.ToString();

, я получаю исключение:

Вызывающий поток не может получить доступ к этому объекту, потому что он принадлежит другому потоку.

Итак, я пытался сделать следующее:

Dispatcher.BeginInvoke(() =>
                    {
                        lbxSelectedItem =  (lbxFileList.SelectedItem as TextBlock).Text;
                    });

Это не работает либо из-за другого исключения:

Невозможно преобразовать лямбда-выражение в тип 'System.Delegate', потому что это не тип делегата

13
задан Cœur 24 January 2017 в 16:55
поделиться