界面内按回车键自动激活下一个控件


  界面内按回车键自动激活下一个控件界面内按回车键自动激活下一个控件


版本: 2014-12-30


界面内按回车键自动激活下一个控件, 需要设置

1. this.KeyPreview=true;
2. this.EnterFocusNextControl=true;





frmBase.cs修改代码:


C# Code:

/// <summary>
/// 处理回车键或系统热键
/// </summary>
/// <param name="sender"></param>
/// <param name="e"></param>
private void frmBase_KeyPress(object sender, KeyPressEventArgs e)
{
   if ((e.KeyChar == (char)Keys.Enter) &&&& ActiveControl is TextBox &&& (_EnterFocusNextControl))
   {
      if (ActiveControl is Form) return;
      if (ActiveControl != null & ActiveControl is MemoEdit) return;
      if (ActiveControl != null & ((TextBox)ActiveControl).Multiline == true) return;
      if (ActiveControl != null & ActiveControl is UserControl) return;
      if (ActiveControl != null & ActiveControl is GridControl) return;
      
      SendKeys.Send("{Tab}");//发送Tab键
   }
   else //其它键,作为系统热键处理
   {
      DoHotkey(e.KeyChar);
   }
}

/// <summary>
/// 处理热键
/// </summary>
/// <param name="key"></param>
protected virtual void DoHotkey(char key)
{
   if (key == (char)Keys.F1)
   {
      Msg.Warning("触发frmBase.DoHotkey事件!");
   }
}

//来源:C/S框架网(www.csframework.com) QQ:1980854898



参考文章:

使用SendKeys.Send发送Tab键代替SelectNextControl()方法




C/S框架网|原创精神.创造价值.打造精品


扫一扫加作者微信
C/S框架网作者微信 C/S框架网|原创作品.质量保障.竭诚为您服务


版权声明:本文为开发框架文库发布内容,转载请附上原文出处连接
C/S框架网
上一篇:使用SendKeys.Send发送Tab键代替SelectNextControl()方法
下一篇:表格内按回车键自动移动下一列, 最后行最后列自动新增记录
评论列表

发表评论

评论内容
昵称:
关联文章

界面回车键自动激活一个
表格回车键自动移动一列, 最后行最后列自动新增记录
基类窗体处理回车键自动跳到一输入
C# Winform 回车键查找一个可设置焦点的组件
GridView最后一列回车键自动新增一条记录
ucWindowTitle用户 - 用户界面规范
原创:C#源码 GridMovetor回车自动跳到一列或自动新增记录(www.csframework.com)
详解DevExpress.LookUpEdit实现自动搜索定位功能
在VS打开Form窗体,界面是个整体,所有不能操作选择和点击
Winform界面布局太多没有出现滚动条XtraScrollableControl组使用
【原创】C# Winform Dev自动拉弹框筛选数据PopupContainerEdit组
C#自动关闭弹出的对话框,自动确定按钮
.NET RichTextBox使用详解
开发技巧-Winform窗体自动生成一个业务流程的单据|C/S框架网
界面是否全部使用dev的?还是也可以选择其它的库?
frmBaseDataForm增加SetControlEnable方法-设置容器可用状态
把单据明细方的各字段,要求能自动添加,默认显示1行
使用Scheduler实现生产进度监控程序
ExRichTextEdit 下载
手工添加DevExpress库到工具箱