Skip to content

CoastRed/KeyBoard.WPF

Repository files navigation

KeyBoard.WPF

一款用于触摸屏输入的屏幕软键盘

开发信息

  • NET + VS2026
  • 使用WPF

支持功能

  • 支持NET6,7,8,9,10及以上版本
  • 支持Net Framework4.62
  • 目前提供2个键盘可选,数字小键盘和全键盘,全键盘是可以打中文的,前提是你的电脑有安装中文包
  • 使用的是WPF的行为,目前只能在WPF项目中使用
  • 目前键盘支持单键的按下、松开模拟,跟使用实体键盘一样,支持组合键
  • 在全键盘中部分键位只显示,不支持,例如:FN,WIN,INS,DEL等
  • 使用钩子函数模拟键盘的按下和松开,代码简单,可以自己下载源码编译为其他版本

快速使用

在XAML中先引入包的命名空间

xmlns:i="http://schemas.microsoft.com/xaml/behaviors"
xmlns:keyboard="clr-namespace:KeyBoard.WPF.Behavior;assembly=KeyBoard.WPF"

小键盘(NumericKeyboardBehavior)

<i:Interaction.Behaviors>
    <keyboard:NumericKeyboardBehavior/>
</i:Interaction.Behaviors>

数字键盘

全键盘(KeyboardBehavior)

<i:Interaction.Behaviors>
    <keyboard:KeyboardBehavior/>
</i:Interaction.Behaviors>

全键盘

可选配置

设置键盘的底色,设置字体大小

<i:Interaction.Behaviors>
    <keyboard:KeyboardBehavior UCBackground="Red" UCFontSize="30"/>
</i:Interaction.Behaviors>
属性 说明
Background 整体的背景色
AlphabetKeyFontSize 全键盘中字母的字体大小
FunctionKeyFontSize 全键盘中功能键(Esc、Tab、Shift、Ctrl、Enter、Backspace等)字号
FKeyFontSize 全键盘中F1-F12键字号
NumberAndSymbolKeyFontSize 全键盘中数字+符号键(0-9 + !@#$%^*()等)字号
数字键盘中数字的字号

注意事项

  • 为了适应(TextBox、PasswordBox等)输入框,在创建行为时,继承的是Behavior<Control>,理论上是可以在任何继承自Control类的控件中使用,但除了输入框,放在其他的控件上是没有意义的
  • 目前的版本,使用了键盘行为的控件必须位于一个继承自Panel的容器中

版本说明

2.1.0

  • 全键盘界面美化
  • 全键盘增加组合键的支持

2.3.0

  • 重构了整个行为
  • 增加了一个数字小键盘和全键盘
  • 增加了键盘控制的静态类
  • 增加了键盘的底色和多种字体大小的设置
  • 对之前的版本有破坏性改动,请注意升级(UCBackground改为Background,UCFontSize分离出多个)

image-20260209170855028

image-20260209170912599

About

一款用于触摸输入的屏幕软键盘

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

 
 
 

Contributors

Languages