如何为WPF应用程序制作一个虚拟键盘?这里有答案(Part 1)
Telerik UI for WPF拥有超过100个控件来创建美观、高性能的桌面应用程序,同时还能快速构建企业级办公WPF应用程序。UI for WPF支持MVVM、触摸等,创建的应用程序可靠且结构良好,非常容易维护,其直观的API将无缝地集成Visual Studio工具箱中。
Telerik UI for WPF套件在R2 2022版本中发布了一个新的组件——RadVirtualKeyboard,旨在允许用户在没有物理设备的情况下输入字符并通过鼠标或触摸设备与之交互。

虚拟键盘的用途
虚拟键盘具有许多优点,最主要的是用户可以直接用外语键盘输入自己的语言,这样的键盘也可以增加用户的安全性。

入门指南
设置 WPF 项目后,为自己配备 RadVirtualKeyboard 是一件容易的事。 您需要的是 XAML 中的 RadVirtualKeyboard 标记以及对 Telerik.Controls.dll、Telerik.Windows.Data.dll 和 Telerik.Controls.Navigation.dll 的引用。
<telerik:RadVirtualKeyboard />

主要功能
布局
该控件具有三个内置布局,可以通过 DefaultKeyboardLayout 属性进行控制:
1. Extended – 标准键盘,如标准物理键盘,带有数字键盘和 F1-F12 键等。

2. Compact – 没有数字键盘和其他按键的键盘。

3. Numpad – 仅显示数字键盘键。

需要自定义布局? 不用担心。 您可以使用特殊的 XML 文件创建一个,然后使用虚拟键盘的 LoadLayout 方法加载它。
支持语言文化
RadVirtualKeayboard 中字母按钮的默认语言由所选操作系统的输入语言决定,更改该语言运行时不会影响字母按钮中的文本。SynchronizeCultureWithSystem 属性在这里起到了帮助作用,只需将其设置为 True 并启用当前输入语言跟踪 - 当语言在运行时更改时,文本将更新。
也可以通过设置控件的 Culture 属性手动更改字母的当前语言。
virtualKeyboard.Culture = new System.Globalization.CultureInfo("bg-BG");
使用声音
如果您不喜欢键盘有声音,只需将IsKeyPressSoundEnabled 属性设置为 false,或者通过 KeySoundPlayer 进行更改。
StreamResourceInfo info = Application.GetResourceStream(new Uri(@"/WpfApplication;component/myClickSoundFile.wav", UriKind.Relative)); virtualKeyboard.KeySoundPlayer = new DefaultKeySoundPlayer(info.Stream);
键盘窗口
Rad VirtualKeyboard 的另一个很酷的地方是它的特殊窗口,根据键盘设计风格:
var keyboardWindow = new RadVirtualKeyboardWindow(new RadVirtualKeyboard() { DefaultKeyboardLayout = DefaultKeyboardLayout.Compact}); keyboardWindow.Show();

Telerik_KendoUI产品技术交流群:726377843 欢迎一起进群讨论
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 阿里最新开源QwQ-32B,效果媲美deepseek-r1满血版,部署成本又又又降低了!
· 单线程的Redis速度为什么快?
· SQL Server 2025 AI相关能力初探
· AI编程工具终极对决:字节Trae VS Cursor,谁才是开发者新宠?
· 展开说说关于C#中ORM框架的用法!
2019-08-30 Kendo UI for jQuery使用教程:初始化jQuery插件