Vb.net 如何在禁用按钮中显示图像?

Vb.net 如何在禁用按钮中显示图像?,vb.net,Vb.net,我在vb.net的按钮控件中放置了图像和背景图像 如果按钮处于禁用状态,图像也将显示为禁用(图像没有颜色)状态。但我希望图像为启用(即,图像应为彩色),同时按钮将处于禁用状态,创建从button类继承的用户控件,然后重写OnPaint()方法 请注意,在继承用户控件后,您将看到一条消息,指示控件的分部类中需要修复,请使用IDE的建议修复此问题,并从设计器代码(在构造函数中)中删除(现在)过时的AutoScaleMode属性 编辑:我错了,您必须重写OnPaint()方法,并完全绘制按钮,包括它的

我在vb.net的按钮控件中放置了图像和背景图像
如果按钮处于禁用状态,图像也将显示为禁用(图像没有颜色)状态。但我希望图像为启用(即,图像应为彩色),同时按钮将处于禁用状态,创建从button类继承的用户控件,然后重写OnPaint()方法

请注意,在继承用户控件后,您将看到一条消息,指示控件的分部类中需要修复,请使用IDE的建议修复此问题,并从设计器代码(在构造函数中)中删除(现在)过时的AutoScaleMode属性

编辑:我错了,您必须重写OnPaint()方法,并完全绘制按钮,包括它的文本


创建从Button类继承的用户控件,然后重写OnPaint()方法

请注意,在继承用户控件后,您将看到一条消息,指示控件的分部类中需要修复,请使用IDE的建议修复此问题,并从设计器代码(在构造函数中)中删除(现在)过时的AutoScaleMode属性

编辑:我错了,您必须重写OnPaint()方法,并完全绘制按钮,包括它的文本

Public Class myButton : Inherits System.Windows.Forms.Button
Protected Overrides Sub OnPaint(ByVal pevent As System.Windows.Forms.PaintEventArgs)
    'MyBase.OnPaint(pevent)
    pevent.Graphics.DrawImage(myimage, 0, 0, myimage.Width, myimage.Height)
    pevent.Graphics.DrawString(Me.Text, Me.Font, SystemBrushes.GrayText, 0, 0)
End Sub
End Class