Я создаю приложение, которое требует динамической генерации панелей, и в свою очередь каждая панель генерирует два события, одно с левым щелчком мыши, а другое с щелчком правой кнопки мыши. Я не смог вызвать обработчик, который я временно поместил в случае левого щелчка, но теперь, когда я вижу, что он работает, я хочу передать его в событие ToolStripMenuItem, но когда он входит в событие, отправитель становится владельцем ToolStripMenuItem, и в этом случае вам потребуется свойство "System. Windows .Forms.Panel", чтобы работать с объектом Panel.
Я не уверен, правильно ли я это делаю, могу Вы поддерживаете меня с любой идеей, как это сделать?
Приложение код, который я разработал до сих пор
Public Class Form1
Dim pb, pbdoors As New Panel
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
Dim pos As Int32 = 20
Dim contador As Int16 = 1
For i As Int16 = 1 To 3
Dim pb As New Panel With
{
.Width = 120,
.Height = 460,
.Top = 10,
.Left = 10,
.Name = "Panel" & contador,
.Location = New Point(pos, 20)
}
AddHandler pb.Click, AddressOf myClickHandler_b
Me.Panel1.Controls.Add(pb)
pb.BringToFront()
pos = pos + 120
contador = contador + 1
Next
End Sub
End Class
Public Sub myClickHandler_b(ByVal sender As System.Object, ByVal e As System.EventArgs)
Dim pos As Integer = Val(TextBox38.Text)
Dim clickedLabel As Panel = DirectCast(sender, Panel)
clickedLabel.Location = New Point((clickedLabel.Location.X + 120), clickedLabel.Location.Y)
TextBox38.Text = pos
End Sub
Private Sub ToolStripMenuItem1_Click(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles ToolStripMenuItem1.Click
myClickHandler_b(sender, e)
End Sub