.Net表格重点

时间:2009-09-30 17:50:30

标签: c# .net winforms focus

我有一个带有多个控件的.net表单。文本框,标签......当表单显示在屏幕上时,文本框默认获得焦点。当我尝试使用鼠标滚轮滚动表单时,滚动消息基本上是文本框,因此表单不会滚动..

我尝试过设置

textbox.capture = false
form.capture = true; 
form.focus();

但似乎没有任何东西可以将注意力从文本框中移开。任何线索如何强制表单获取鼠标事件而不是它的控件??

1 个答案:

答案 0 :(得分:2)

Control.Focus()州的MSDN documentation

  

[...]

     

可以选择和接收控件   输入焦点如果满足以下条件   true:可选值   ControlStyles设置为true,它是   包含在另一个控件中,以及所有   它的父控件都是可见的   并启用。

     

中的Windows窗体控件   以下列表不可选。   从这些控件派生的控件   也是不可选择的。

     
      
  • 面板
  •   
  • 分组框中
  •   
  • 图片框
  •   
  • 进度
  •   
  • 分离器
  •   
  • 标签
  •   
  • LinkLabel(当控件中没有链接时)
  •   
     
     

NoteNote:

     

Focus 是一种主要面向自定义控件作者的低级方法。   相反,应用程序员应该使用 Select 方法或   子控件的 ActiveControl 属性,或表单的 Activate 方法。