【发布时间】:2010-08-24 16:44:37
【问题描述】:
根据用户在 .NET TextBox 中输入的 Enter 键 (Keys.Enter) 执行操作的最佳方法是什么,假设拥有导致禁止 Enter 键的键输入的所有权文本框本身(e.Handled = true)?
为了这个问题的目的,假设期望的行为不是按下表单的默认按钮,而是应该发生的其他一些自定义处理。
【问题讨论】:
-
我不明白这个问题。你是问要执行什么动作,还是问如何执行,还是问事件发生时如何通知?
-
最好的办法就是什么都不做。 Enter 键在 UI 设计中具有明确的含义,不应被篡改。在一种形式中任意使用它来更改焦点,而在另一个对话框中使用 AcceptButton 只会让用户感到困惑。
-
ChrisW:基础知识都非常明显。我在这里追求的是如何处理与幼稚实现相关的警告,例如,如果您有数据绑定 Text 属性,那么当您处理数据源的 KeyDown 事件时'未使用存储在文本框中的值进行更新。 @Hans Passant:我听到了。在这种情况下,它用于与可选(很少使用)其他输入配对的全文搜索框的上下文中。按 Enter 应该会执行搜索。