Использование может использовать OnPaint event
из winform
, и там вы можете сделать некоторые изменения.Проверьте указанные ссылки, чтобы узнать подробности об этом.
Используйте LinearGradientBrush
, чтобы сделать это следующим образом:
/ * Возьмите кисть с линейным градиентом * /
LinearGradientBrush brush = new LinearGradientBrush(rect, Color.Orange, Color.Orchid, LinearGradientMode.ForwardDiagonal);
Фрагмент кода перегрузки OnPaint:
Protected Overrides Sub OnPaint(ByVal e As System.Windows.Forms.PaintEventArgs)
' Declare a variable of type Graphics named formGraphics.
' Assign the address (reference) of this forms Graphics object
' to the formGraphics variable.
Dim formGraphics As Graphics = e.Graphics
' Declare a variable of type LinearGradientBrush named gradientBrush.
' Use a LinearGradientBrush constructor to create a new LinearGradientBrush object.
' Assign the address (reference) of the new object
' to the gradientBrush variable.
Dim gradientBrush As New LinearGradientBrush(New Point(0, 0), New Point(Width, 0), Color.White, Color.DarkMagenta)
' Here are two more examples that create different gradients.
' Comment the Dim statement immediately above and uncomment one of these
' Dim statements to see how varying the two colors changes the gradient result.
' Dim gradientBrush As New LinearGradientBrush(New Point(0, 0), New Point(Width, 0), Color.Chartreuse, Color.SteelBlue)
' Dim gradientBrush As New LinearGradientBrush(New Point(0, 0), New Point(Width, 0), Color.White, Color.SteelBlue)
formGraphics.FillRectangle(gradientBrush, ClientRectangle)
End Sub
Другой способ - использовать OnPaintBackground
событие и использовать LinearGradientBrush
ref: MSDN
protected override void OnPaintBackground(PaintEventArgs e) {
Rectangle rc = new Rectangle(0, 0, this.ClientSize.Width, this.ClientSize.Height);
using (LinearGradientBrush brush = new LinearGradientBrush(rc, Color.Red, Color.Blue, 45F)) {
e.Graphics.FillRectangle(brush, rc);
}
Ссылка:
Как добавить градиентный фон в форму победы с VB.NET и VB2005
Windows Forms 2.0-Draw Красивые фоновые градиенты
Установите для градиента / затененного фона форму Windows, используя c #
Проверьте Resize
связанную информацию здесь: this.Invalidate()
-
Создайте фон градиента на ваших формах или элементах управления
проверьте также эту ветку SO .. Прозрачные контрольные фоны в заполненной градиентом форме VB.NET?