Win RT - 带条码扫描器的通用应用程序

时间:2014-07-13 08:19:59

标签: c# windows-runtime windows-8.1 windows-phone-8.1 win-universal-app

我正在开发适用于Windows 8.1和Windows Phone 8.1的通用应用程序,我希望能够扫描条形码。对于Windows 8.1,存在一个本机类BarcodeScanner,不幸的是,Windows Phone 8.1无法访问(我真的不明白是什么导致微软这样做)。我找到了一个名为zxing的第三方解决方案,但here我已经读过它对于通用应用程序非常有效。在通用应用程序中实现条形码扫描功能的最佳方法是什么?

谢谢!

1 个答案:

答案 0 :(得分:1)

我只想使用一个文本框。大多数条形码扫描仪将充当键盘,扫描后将发送输入键输入。如果您的文本框侦听了按键事件并检查了回车键,则您将知道扫描完成的时间。我个人不会使用服务点。它来自旧版本的.NET,根据我的经验,它甚至不能用于桌面应用程序。这就是我的样子。

private void TextBox1_KeyUp(object sender, KeyEventArgs e)
    {
        if (e.Key == Key.Enter)
        {
            this.MyFunction(this.TextBox1.Text);
        }
    }

这样做的好处是,如果需要,程序可以在没有条形码扫描器的情况下运行。用户只需键入数字并按Enter即可。缺点是需要选择文本框以便程序接收输入。为了减少或消除用户必须始终选择文本框,您可以使用this.TextBox1.Focus()设置焦点。