【发布时间】:2011-11-04 17:17:03
【问题描述】:
目前在我的应用程序中,无法取消选择文本框。唯一的方法是选择另一个文本框。我的用户和我同意单击表单上的其他任何位置应取消选择当前文本框。我尝试在许多控件上覆盖 MouseDown 并将焦点设置为随机标签,但它不适用于 MenuStrip 或滚动条等某些控件。有什么想法吗?
【问题讨论】:
-
这样一个要求的理由是什么?这对您的用户有什么好处?
-
您使用的是什么平台? WinForms、ASP.NET、WPF?
-
@cdhowie:因为表单上还有 NumericUpDown,并且在这些值上使用鼠标滚轮增加/减少值。用户希望能够单击面板并使用滚轮来移动它。但是,NumericUpDown 仍处于选中状态,而是滚动该值。我不想只对 NumericUpDown 有这种行为,因为它会使用户感到困惑。
-
那么也许点击面板应该将焦点分配给它的滚动条。
-
@cdhowie——我明白他为什么想要这个——网页的行为方式是这样的。单击一个大文本区域,您的鼠标滚轮将在内部文本窗口中滚动。单击文本区域外的任何位置,鼠标滚轮将滚动页面。我假设他希望他的 WinForms 以相同的方式运行。
标签: c# winforms textbox focus setfocus