1

我有带有文本框和轨迹栏的 ac# .net 2.0 winForm。如果用户单击轨迹栏并且验证失败,则文本框 Validating 事件设置 e.cancel。然后我将光标留在文本框中,但鼠标焦点仍在轨迹栏上,因此移动鼠标会移动轨迹栏。

我在验证事件中尝试了 SetFocus(根据 MSDN 很糟糕,但我还是尝试了),但鼠标停留在轨迹栏上。

如何将鼠标焦点从轨迹栏上分离?

4

1 回答 1

0
  • 您是否在消息框中显示验证错误消息。如果是这种情况,则不会触发鼠标释放轨迹栏,因为消息框将获得控制权,这就是您在退出消息框后看到轨迹栏移动的原因。
  • MessageBox 和验证事件不能很好地配合。最好的方法是使用ErrorProvider.
于 2010-10-17T18:07:45.903 回答