У меня есть форма с изображением (по умолчанию черная bg), и у меня есть панель flowlayout внизу. На загрузке формы он проходит через папку с изображениями и создает миниатюру (управление изображением) внутри панели flowlayout. То, что я хочу сделать, - это динамически добавить событие щелчка, чтобы пользователь мог изменить изображение основного изображения с одним из миниатюр.Как получить значение из динамического элемента управления?
Private Sub TabImageLoad()
Dim apppath As String = Application.StartupPath()
Dim strFileSize As String = ""
Dim di As New IO.DirectoryInfo(apppath + "\images")
Dim aryFi As IO.FileInfo() = di.GetFiles("*.*")
Dim fi As IO.FileInfo
For Each fi In aryFi
If fi.Extension = ".jpg" Or fi.Extension = ".jpeg" Or fi.Extension = ".gif" Or fi.Extension = ".bmp" Then
Dim temp As New PictureBox
temp.Image = Image.FromFile(di.ToString + "\" + fi.ToString)
temp.Width = 100
temp.Height = 75
temp.Name = fi.ToString
temp.Visible = True
temp.SizeMode = PictureBoxSizeMode.StretchImage
AddHandler temp.Click, AddressOf Me.temp_click
FlowLayoutPanel1.Controls.Add(temp)
End If
Next
End Sub
Private Sub temp_click(ByVal sender As System.Object, ByVal e As System.EventArgs)
PictureBox1.Image = temp.Image
End Sub
Это мой код подразделов, который получает изображения (обратите внимание на попытку ДобавитьОбработчика) и к югу, что ссылки на AddHandler. Поскольку вы, вероятно, догадались, что addhandler не работает, потому что «temp» не объявлен в sub temp_click.
Любые предложения?
Спасибо, именно то, что я искал :) – rmalex