0

我已经设法制作了一个自定义控件,它允许 RichTextBox 背景显示为透明并且它几乎可以完美地工作,但唯一的事情是,当 Rich Text 框刷新时,所有内容都会闪烁/闪烁。每次我输入一个字母时,我的所有表单都会刷新,文本以及表单背景图像都会闪烁。

除了使用之外,还有其他方法可以更新/刷新文本吗

MyBase.Parent.Refresh()

这是我的代码:

Class TransparentRichTextBox
Inherits RichTextBox
Public Sub New()
    MyBase.ScrollBars = RichTextBoxScrollBars.None
End Sub
Protected Overloads Overrides ReadOnly Property CreateParams() As CreateParams
    Get
        Dim cp As CreateParams = MyBase.CreateParams
        cp.ExStyle = cp.ExStyle Or &H20
        Return cp
    End Get
End Property
Protected Overloads Overrides Sub OnPaintBackground(ByVal e As PaintEventArgs)
End Sub
Protected Overrides Sub OnTextChanged(ByVal e As System.EventArgs)
    MyBase.OnTextChanged(e)
    MyBase.Parent.Refresh()
    End Sub
End Class

谢谢。

4

0 回答 0