VB2010:我有一个表单,我在一个通过.NET支持他们的框架的地图应用程序中显示。因此,当用户单击自定义扩展程序上的按钮时,将显示我的表单。
Private frm As New frmDesigner 'since this is a floating form
Public Overrides Sub OnClick()
Try
''display the form normally
'Dim frm As New frmDesigner
'frm.ShowDialog()
'display the modeless form and the form will always be on top of the main app.
If frm.IsDisposed Then frm = New frmDesigner 'To handle user closing form
If frm.Visible Then
frm.BringToFront()
Else
Dim appCtr As Control = Control.FromHandle(CType(MyApp.hWnd, IntPtr))
frm.Show(appCtr)
End If
Catch ex As Exception
DisplayException(ex)
End Try
End Sub
这很有效,我已经使用这种方法已有几年了。我现在看到的问题是表单上的控件标签不起作用。一旦表单出现,我按Tab键按钮,光标不会通过控件标签。我可以通过鼠标将焦点设置在文本框上,然后尝试切换到下一个控件,但这也不起作用。
如果我通过frm.ShowDialog正常显示表单,那么Tab键确实有效。这里有什么东西可以使标签正常工作吗?