我有这样的方法:
Public Sub CreateEditbox(sender As Object)
ListBox1 = DirectCast(sender, ListBox)
itemSelected = ListBox1.SelectedIndex
Dim r As Rectangle = ListBox1.GetItemRectangle(itemSelected)
Dim itemText As String = DirectCast(ListBox1.Items(itemSelected), String)
EditBox.Location = New System.Drawing.Point(r.X + 15, r.Y + 15)
EditBox.Size = New System.Drawing.Size(r.Width - 15, r.Height)
editBox.Show()
ListBox1.Controls.AddRange(New System.Windows.Forms.Control() {Me.editBox})
editBox.Text = itemText
editBox.Focus()
editBox.SelectAll()
AddHandler EditBox.KeyPress, AddressOf EditOver
AddHandler EditBox.LostFocus, AddressOf FocusOver
End Sub
现在我希望能够通过buttonclick调用此方法,我只是不太确定如何从buttonclick事件中获取列表框的发件人数据,如方法的第一行所示。有什么想法吗?
致以最诚挚的问候,
约翰
答案 0 :(得分:0)
如果要从按钮单击调用该方法,则需要传递ListBox对象。
代表:
CreateEditbox(myListBox)
在您的情况下,如果“sender”是ListBox,则将列表框本身作为参数发送给方法。