我的用户控件很奇怪,它只包含一个文本框(用于输入数字)。
例如,在“编辑状态”中,我的文本未格式化且左对齐,但在离开控制后,我希望将相同的文本格式化并右对齐。为此,我在文本框的“离开”事件处理程序下使用了一个代码:
Private Sub numText_Leave(ByVal sender As Object, ByVal e As System.EventArgs) Handles numText.Leave
Debug.Print("numText_Leave")
numText.TextAlign = def_Alignment ' right
RefreshText() ' sub for formatting
End Sub
会发生什么?
当程序进入 _Leave 并设置新的对齐方式时,numText 再次进入并且用户控件不想退出。如果我评论那些代码用户控件正常退出但我无法获得所需的文本显示(格式化)。
如果我使用 numText_LostFocus 而不是 _Leave 处理程序,也会发生同样的情况。
关于在这里做什么的任何想法?
编辑:
毕竟,我找到了解决方案。
诀窍在于使用 textbox_Enter 输入和 textbox_LostFocus 退出。
这样的事件对在退出时不会引发 textbox_Enter 设置文本框的对齐方式。