0

我有一个简单的应用程序,用户在其中输入文本并按 Enter,然后文本显示在大电视屏幕上。

问题:如何进入e.KeyCharWPF 应用程序,KeyUp 事件?还是有其他方法?

public partial class MainWindow : Window
    {
        public MainWindow()
        {
            InitializeComponent();
            this.KeyUp += MainWindow_KeyUp;
        }

        private String Text;

        void MainWindow_KeyUp(object sender, KeyEventArgs e)
        {


            if (e.Key == Key.Enter)
            {
                TextLabel.Content = Text;
                Text = String.Empty;
            }
            else
            {
                Text += e.Key;
            }

        }

我输入“test”时的结果是“TEST”。我必须手动处理所有系统密钥吗?如果我想输入“Test”怎么办 -> 现在我得到结果“RihgtShiftTEST”。我想要的只是积累一个字符缓冲区,并显示文本。

4

1 回答 1

2

对于阅读文本输入,最好使用以下事件:

http://msdn.microsoft.com/en-us/library/system.windows.uielement.ontextinput.aspx

TextCompositionEventArgs 的“Text”成员已经提供了高级纯文本并过滤掉了所有讨厌的控制字符等。

于 2012-09-14T14:32:34.723 回答