c# - 来自 HRESULT : 0x8001010E (RPC_E_WRONG_THREAD) 的 Windows Phone 异常

标签 c# windows-phone-8 windows-runtime windows-phone-8.1 windows-phone

<分区>

我的 Windows 运行时应用程序读取 NDEF NFC 标签。 当应用程序读取 NFC 标签正确时,我的方法接收到的消息将打开。

private void messageReceived(ProximityDevice sender, ProximityMessage message)
{
    device.StopSubscribingForMessage(NFCID);
    var ndefMessage = NdefMessage.FromByteArray(message.Data.ToArray());

    StringBuilder sb = new StringBuilder();
    foreach (NdefRecord record in ndefMessage) sb.AppendLine(Encoding.UTF8.GetString(record.Payload, 0, record.Payload.Length));

    String data= sb.ToString();
    ShowData(data);
} 

private void ShowData(string data)
{
    tbx.Text = data;
}

当我想将此数据设置为文本字段时,每次都会抛出异常: HRESULT 异常:0x8001010E (RPC_E_WRONG_THREAD)

最佳答案

您需要先发送它:

Dispatcher.RunAsync(CoreDispatcherPriority.Normal, () =>
        {
            tbx.Text = data;
        });

编辑:显然这并不总是最好的解决方案。如果您仍然收到该错误,请改为这样做:Run code on UI thread in WinRT

关于c# - 来自 HRESULT : 0x8001010E (RPC_E_WRONG_THREAD) 的 Windows Phone 异常,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32078253/

相关文章:

c# - 如何在集成测试之间刷新 IAppCache

c# - 在 Application_Start 上创建一个类实例

windows-phone-8 - Windows Phone 8,在网络浏览器中打开 URL 的按钮

windows-runtime - 通过覆盖或样式使 ScrollViewer 的 ScrollBar 始终可见

c# - 在 c# 和 winrt 中将流保存到文件

c# - 是否可以编写一个看门狗进程来捕获应用程序崩溃?

c# - 以编程方式向 Word 文档插入换行符(不是分段符)

c# - IEnumerator 的随机顺序

c# - 文件选取器的 Windows 8 手机应用代码错误

c# - 使用包含对自身引用的 OData 对象创建表时出现 SQLite 异常