组合框 onkeypress 事件上的自动完成会占用 Enter 键

2023-11-30

我有一个组合框AutoCompleteMode = suggest并像这样处理 KeyPress 事件:

private void searchBox_KeyPress(object sender, KeyPressEventArgs e)
{
    if (e.KeyChar == (char)Keys.Return)
    {
        // do stuff
    }
}

然而,它并没有抓住Enter钥匙。它捕获了其他所有内容,因为自动完成下拉菜单工作得很好。

我也尝试了这里提供的建议:http://social.msdn.microsoft.com/Forums/en-US/netfxbcl/thread/2db0b540-756a-4a4f-9371-adbb92409806,设置表格的KeyPreview属性设置为 true 并在表单的 KeyPress 事件处理程序中放置一个断点:

private void Form_KeyPress(object sender, KeyPressEventArgs e)
{
    e.Handled = false;
}

然而,即使是表单的处理程序也没有捕获回车键!

有什么建议么?

(如果我禁用自动完成功能,它会捕获 Enter 键)


KeyDown 和 KeyPress 之间的区别

根据您的情况,您最好使用 KeyDown 事件。

void SearchBox_KeyDown(object sender, KeyEventArgs e)
{
   if(e.KeyCode == Keys.Enter)
    {
        // Do stuff
    }
}

关于 KeyPress 事件的另一个有趣的事情是:如果组合框没有项目,它甚至会捕获 Enter 键并自动完成! :-)

本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

组合框 onkeypress 事件上的自动完成会占用 Enter 键 的相关文章

  • 不支持将数据直接绑定到存储查询(DbSet、DbQuery、DbSqlQuery)

    正在编码视觉工作室2012并使用实体模型作为我的数据层 但是 当页面尝试加载时 上面提到的标题 我使用 Linq 语句的下拉控件往往会引发未处理的异常 下面是我的代码 using AdventureWorksEntities dw new
  • 使用实体框架模型输入安全密钥

    这是我今天的完美想法 Entity Framework 中的强类型 ID 动机 比较 ModelTypeA ID 和 ModelTypeB ID 总是 至少几乎 错误 为什么编译时不处理它 如果您使用每个请求示例 DbContext 那么很
  • BitTorrent 追踪器宣布问题

    我花了一点业余时间编写 BitTorrent 客户端 主要是出于好奇 但部分是出于提高我的 C 技能的愿望 我一直在使用理论维基 http wiki theory org BitTorrentSpecification作为我的向导 我已经建
  • 用于登录 .NET 的堆栈跟踪

    我编写了一个 logger exceptionfactory 模块 它使用 System Diagnostics StackTrace 从调用方法及其声明类型中获取属性 但我注意到 如果我在 Visual Studio 之外以发布模式运行代
  • 不同枚举类型的范围和可转换性

    在什么条件下可以从一种枚举类型转换为另一种枚举类型 让我们考虑以下代码 include
  • 堆栈溢出:堆栈空间中重复的临时分配?

    struct MemBlock char mem 1024 MemBlock operator const MemBlock b const return MemBlock global void foo int step 0 if ste
  • C#中如何移动PictureBox?

    我已经使用此代码来移动图片框pictureBox MouseMove event pictureBox Location new System Drawing Point e Location 但是当我尝试执行时 图片框闪烁并且无法识别确切
  • C++ OpenSSL 导出私钥

    到目前为止 我成功地使用了 SSL 但遇到了令人困惑的障碍 我生成了 RSA 密钥对 之前使用 PEM write bio RSAPrivateKey 来导出它们 然而 手册页声称该格式已经过时 实际上它看起来与通常的 PEM 格式不同 相
  • 如何设计以 char* 指针作为类成员变量的类?

    首先我想介绍一下我的情况 我写了一些类 将 char 指针作为私有类成员 而且这个项目有 GUI 所以当单击按钮时 某些函数可能会执行多次 这些类是设计的单班在项目中 但是其中的某些函数可以执行多次 然后我发现我的项目存在内存泄漏 所以我想
  • while 循环中的 scanf

    在这段代码中 scanf只工作一次 我究竟做错了什么 include
  • 如何在 C 中调用采用匿名结构的函数?

    如何在 C 中调用采用匿名结构的函数 比如这个函数 void func struct int x p printf i n p x 当提供原型的函数声明在范围内时 调用该函数的参数必须具有与原型中声明的类型兼容的类型 其中 兼容 具有标准定
  • 这些作业之间是否存在顺序点?

    以下代码中的两个赋值之间是否存在序列点 f f x 1 1 x 2 不 没有 在这种情况下 标准确实是含糊不清的 如果你想确认这一点 gcc 有这个非常酷的选项 Wsequence point在这种情况下 它会警告您该操作可能未定义
  • WPF/C# 将自定义对象列表数据绑定到列表框?

    我在将自定义对象列表的数据绑定到ListBox in WPF 这是自定义对象 public class FileItem public string Name get set public string Path get set 这是列表
  • 如何从两个不同的项目中获取文件夹的相对路径

    我有两个项目和一个共享库 用于从此文件夹加载图像 C MainProject Project1 Images 项目1的文件夹 C MainProject Project1 Files Bin x86 Debug 其中有project1 ex
  • 如何在Xamarin中删除ViewTreeObserver?

    假设我需要获取并设置视图的高度 在 Android 中 众所周知 只有在绘制视图之后才能获取视图高度 如果您使用 Java 有很多答案 最著名的方法之一如下 取自这个答案 https stackoverflow com a 24035591
  • 将控制台重定向到 .NET 程序中的字符串

    如何重定向写入控制台的任何内容以写入字符串 对于您自己的流程 Console SetOut http msdn microsoft com en us library system console setout aspx并将其重定向到构建在
  • 是否可以在 .NET Core 中将 gRPC 与 HTTP/1.1 结合使用?

    我有两个网络服务 gRPC 客户端和 gRPC 服务器 服务器是用 NET Core编写的 然而 客户端是托管在 IIS 8 5 上的 NET Framework 4 7 2 Web 应用程序 所以它只支持HTTP 1 1 https le
  • 哪种 C 数据类型可以表示 40 位二进制数?

    我需要表示一个40位的二进制数 应该使用哪种 C 数据类型来处理这个问题 如果您使用的是 C99 或 C11 兼容编译器 则使用int least64 t以获得最大的兼容性 或者 如果您想要无符号类型 uint least64 t 这些都定
  • 如何将服务器服务连接到 Dynamics Online

    我正在修改内部管理应用程序以连接到我们的在线托管 Dynamics 2016 实例 根据一些在线教程 我一直在使用OrganizationServiceProxy out of Microsoft Xrm Sdk Client来自 SDK
  • Windows 和 Linux 上的线程

    我在互联网上看到过在 Windows 上使用 C 制作多线程应用程序的教程 以及在 Linux 上执行相同操作的其他教程 但不能同时用于两者 是否存在即使在 Linux 或 Windows 上编译也能工作的函数 您需要使用一个包含两者的实现

随机推荐

  • ReactJS 内容没有填满整个页面,仅占据可用高度的 3/4

    正如您所看到的 即使高度属性为 100 包含粒子和 Home 组件的 div 也仅使用了 3 4 的高度 我渲染组件是否错误 我应该怎么做才能让组件填满整个页面 我认为问题出在 ParticlesComponent 上 因为由于某种原因它没
  • 从角度控制器发送带有文本框的多个图像数据

    我想将带有文本框值的多个图像数据发送到服务器端 PHP 我已经完成了多个图像上传 但在提交表单时无法将我的数据发送到服务器端 我的查看代码如下
  • R 中的 NLS 和对数周期幂律 (LPPL)

    这是迄今为止我在 R 中做过的最具挑战性的事情 因为 nls 和 LPPL 对我来说都是相当新的 以下是我一直在使用的脚本的一部分 df 是一个由两列组成的数据框 Date 和 Y 它们是 S P 500 的收盘价 我不确定它是否相关 但日
  • 如何在移动网络中从 navigator.getUserMedia() 获取对象?

    尝试获取 JavaScript 引用 承诺媒体流从返回媒体设备在 HTML5 和 WebRTC 中 这里的 JavaScript 是在 iOS 和 Android 上的 Chrome 和 Safari 上运行的 navigator medi
  • 为什么静态变量需要显式定义?

    在课堂里 class foo public static int bar declaration of static data member int foo bar 0 definition of data member 我们必须显式定义静
  • Android - “SQLite.SQLiteConnection”的类型初始值设定项引发异常。 ---> System.DllNotFoundException: e_sqlite3

    在我们的 Xamarin Android 项目中 我们正在尝试从 sqlite net 切换到官方 sqlite net pcl 包 但是 在创建新的 SQLiteConnection 后进行此切换后 我收到以下异常 SQLite SQLi
  • 拦截 WM_CLOSE 进行清理操作

    我有一个外部应用程序调用我的应用程序 并应该在工作完成后结束它 该外部应用程序的日志声称它使用WM CLOSE在我的应用程序上 我怎样才能拦截WM CLOSE我的应用程序中的消息要执行一些清理操作吗 我试过at exit 并将其包装在一个类
  • Meteor Spacebars {{#if someCondition}} 在页面刷新时简要显示数据

    我尝试了几种不同的方法 它们的行为方式相同 请参阅下面的代码 我使用空格键 if 条件 并尝试使用帮助程序 来检查用户是否已登录 然后显示登录 注册链接 如果未登录 如果是 请将其隐藏 我注意到 在初始页面加载时 如果他们从不同的站点导航回
  • 两个其他日期之间的日期,不考虑年份

    我正在寻找类似的人here正在寻找 只有我想使用MySQL 下表是您在我的数据库中找到的内容 简化 id name first last 1 John 1020 0814 2 Ram 0827 0420 3 Jack 0506 0120 4
  • 为什么我无法更改工作表参考?

    首先 如果这个问题太明显 我提前道歉 我只是几年没有使用 VBA 和 Excel 而且在其他地方找不到我的问题的答案 我希望我的 VBA 程序从工作表 ReportData 中获取数据 并使用它在新工作表 Report 上创建一些数据透视表
  • PHP 和 shell_exec

    我有一个 PHP 网站 我想在后台执行一个很长的 Python 脚本 300 MB 内存和 100 秒 流程通信是通过数据库完成的 当Python脚本完成其工作时 它会更新数据库中的字段 然后网站根据Python脚本的结果呈现一些图形 我可
  • 如何在Java中创建Kafka ZKStringSerializer?

    在搜索如何通过 API 创建 Kafka 主题时 我在 Scala 中找到了这个示例 import kafka admin AdminUtils import kafka utils ZKStringSerializer import or
  • 使用 HTTPS 本地主机 SSL 证书保护 WebSocket (WSS)?

    我对整个 WebSocket 和 SSL 证书有点陌生 所以我在Android端创建了自己的WebSocket服务器 网站是客户端 我能够让它与常规 WebSocket 一起工作 ws 但 WebSocket 不安全 wss 因为它需要 S
  • Xcode、构建和 dylib

    我查看了一些相关问题 似乎无法为自己找到解决方案 基本上我在 Xcode 项目中使用 libmp3lame dylib lame 的安装过程生成了 dylib 并将其放置在 usr local lib 中 为了让 Xcode 构建并运行该项
  • 使用nzload加载特殊字符

    我在 Oracle 表数据中扩展了 ascii 字符 我可以使用带有 转义字符前缀的 sqlplus 将其提取到文件中 我想使用 nzload 将完全相同的数据加载到 netezza 表中 nzload 在遇到此 char seq c2bf
  • Android - Ajax 风格自动检查用户名可用性

    我正在构建一个 Android 应用程序 其中要求用户选择昵称 现在 两个用户不能有相同的昵称 我在 net 上看到过表单 当用户使用 Ajax 调用键入或按 Tab 时 我们可以验证特定用户名的可用性 我的问题是 Android 上有类似
  • 如何将十六进制数据转换为日期时间

    我有一个像这样的十六进制字符串 529CD17C 这对应于一个日期时间 12 2 2013 06 29 16 PM 即以 MM dd yyyy hh mm ss AM PM 表示 我该怎么办这在c 编码中 您正在使用 UNIX 时间戳 首先
  • 没有这样的文件:jenkins 中出现“pom.xml”错误

    我有一个存储库Bitbucket 在该存储库中我有一个名为Demo这是一个maven项目 我正在尝试部署Demo with Jenkins 我正在遵循的步骤 在 Jenkins 中创建了一个作业 项目 配置 这是各个作业的配置 Projec
  • 下载属性在 Firefox 中不起作用,但在 chrome 中起作用

    这个小提琴在 Firefox 中不起作用 但在 Chrome 中工作 我尝试过使用这个 p Click on the w3schools logo to download the image p p a href http www w3sc
  • 组合框 onkeypress 事件上的自动完成会占用 Enter 键

    我有一个组合框AutoCompleteMode suggest并像这样处理 KeyPress 事件 private void searchBox KeyPress object sender KeyPressEventArgs e if e