|
|
1
1
更新: 这有点凌乱,但经过一些重构之后可能会有所帮助。 我使用预览事件捕获文本并强制发送所需的键;我忽略预览处理程序中的所有其他键。我确实从键向下切换到键向上,以使预览事件首先触发。我使用\u clearnext标志跳过/清除密钥事件。 在XAML中
代码隐藏检测和处理_
我再补充一句,一定有更好的办法。 |
|
2
1
最后,我必须重写整个内容(并基于正在输入的文本区域的文本)。 |
|
|
3
0
ToString值作为这些不同的键返回,因为它得到了键的名称,而不一定是要测试的字符值。我真的建议使用这里的密钥枚举… 就你的问题而言,我不能百分之百确定你想做什么(这对电子游戏等没有帮助),但也许 UIElement.PreviewTextInput event 可以帮助-而不是必须抓住个别按键,你得到实际的文本输入,这有助于在其他情况下,如处理语音识别等。 从您的评论中可以看出,您试图捕获非字符指标和字符指标;这些指标可能会相互冲突(尤其是在压缩键盘上),因此,MS构建框架的方式似乎不会意外忽略某个情况。(您的特定情况显示shift+dash和shift+之间的区别?在两个不同的键盘上;我敢肯定还有更多。)我建议只查找按键,并赋予应用程序的最终用户重新绑定键的能力。 这提醒了我,小心“mousedown”事件,因为它们不会出现在触摸屏上(如Microsoft Surface),最好对所有可用事件进行编码。 祝你的项目好运! |
|
|
Sei · Avalonia/WPF将路由器传递到控制模板 1 年前 |
|
|
Barta · WPF MVVM不更新视图 1 年前 |
|
|
Denis Ivanov · WPF控件在属性更改时不会更新 1 年前 |
|
|
codymanix · WPF:TextBlock周围可见小边框? 1 年前 |
|
|
Nostromo · 来自背景对象的工具提示 1 年前 |
|
|
Nuvolari · 从可观测集合添加/删除时出现对象处理异常 2 年前 |
|
|
CCarter · 只能在设计器中DependencyObject的DependencyProperty上设置显示“Binding”的WPF ICommand DependencyProperties[重复] 2 年前 |
|
|
Thern · 在UI线程(WPF)上的void方法中调用异步函数 2 年前 |