Я создал «форму без полей» с именем Form2 с несколькими компонентами для придания ей некоторой функциональности и установил для ее родителя значение Form1 «, для которого задано фоновое изображение ». Я также установил DoubleBuffer=True
в Form2 и Form1, чтобы избежать мерцания. Когда я перетаскиваю или двигаю Form2, он оставляет следы или меньше реагирует (как будто есть проблемы с графикой), пока я не оставлю мышь. Я также использовал Refresh()
, Invalidate()
и Update()
, все то же самое. Есть ли решение этой проблемы?
РЕДАКТИРОВАТЬ 1: Посмотрите что-то это
Imports System.Windows.Forms
Public Class Form1
Inherits Form
Public Sub New()
DoubleBuffer=True
End Sub
End Class
Public Class Form2
Inherits Form
Public Sub New()
DoubleBuffer=True
TopLevel=False
End Sub
End Class
Module MainApp
Dim Form1 As New Form1
Dim Form2 As New Form2
Sub Main()
With Form2
Form1.Controls.Add(Form2)
.FormBorderStyle = FormBorderStyle.None
Form1.BackgroungImage = My.Resources.ImageResurce.IMG_1
Form1.BackgroundImageLayout = ImageLayout.Stretch
.Show
Form1.Show
AddHandler .MouseDown, AddressOf Drag
AddHandler .MouseUp, AddressOf Drag
AddHandler .MouseMove, AddressOf Drag
End With
Do
Application.DoEvents()
Loop
End Sub
Sub Drag(sender As Object, e As EventArgs)
'Code to drag form2
End Sub
End Module