обновление элемента интерфейса после нажатия кнопки gpio - PullRequest
0 голосов
/ 06 февраля 2020

Я делаю приложение, которое обновляет элемент пользовательского интерфейса после нажатия кнопки, подключенной к контактам GPIO. я впервые работаю с windows iot core. Я думал, что это будет так же просто, как этот "lblQuestion.Text =" Кнопка работает! ";" но это не так. Может кто-нибудь сказать мне, что я должен добавить, чтобы он работал правильно?

Я получаю эту ошибку: System.Exception: «Приложение вызвало интерфейс, который был назначен для другого потока. (Исключение из HRESULT: 0x8001010E (RPC_E_WRONG_THREAD)) '

1 Ответ

1 голос
/ 10 февраля 2020

Используйте следующий код для маршалинга вызовов, поступающих из потоков, не относящихся к пользовательскому интерфейсу.

        await Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
        {
            lblQuestion.Text = "Button works!
        });

Этот документ описывает причину, по которой вам нужно создать DependencyObject в потоке пользовательского интерфейса.

...