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

mar*_*ani 8 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的第三方解决方案,但在这里我读到它对于通用应用程序非常有用.在通用应用程序中实现条形码扫描功能的最佳方法是什么?

谢谢!

小智 1

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

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

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