可以悬停并可以附加到vb.net中的表单的用户控件



当我在屏幕上移动窗口时,用户控件不会移动。除了在窗体窗口中的运行时创建控件之外,还有什么方法可以将控件添加到窗口中吗。我已经分享了下面的代码。

我使用链接link1和link2 创建了一个自定义的CustomBox

用户控制码

Private mList As CustomBox
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click

mList = New CustomBox(Me)
mList.Location = New Point(5, 10)
mList.Size = New Size(50, Me.ClientSize.Height + 50)

For ix As Integer = 0 To 100 - 1
mList.Items.Add(ix)
Next
End Sub

编辑:

与其将Me(即用户控制实例(作为父级传递,不如将Me.ParentForm作为父级。如果您仍然出于任何其他目的需要用户控件实例,只需将其作为另一个参数传递即可。

您需要管理的另一件事是偏移。为此,你可以简单地将用户控件的位置添加到你想放置它的任何地方

这是更新后的代码:

Public Class UserControl1
Private mList As CustomBox
Private Sub Button1_Click(sender As Object, e As EventArgs) Handles Button1.Click
mList = New CustomBox(Me.ParentForm)
mList.Location = Me.Location + (New Point(5, 10))
mList.Size = New Size(50, Me.ClientSize.Height + 50)
For ix As Integer = 0 To 100 - 1
mList.Items.Add(ix)
Next
End Sub
End Class

以下是上面代码更改后的外观。

https://i.stack.imgur.com/lGb78.jpg

最新更新