Я использую следующий код, чтобы удалить все элементы управления внутри FlowLayoutPanel:
While FlowLayoutPanel1.Controls.Count > 0
Dim controltoremove = FlowLayoutPanel1.Controls(0)
FlowLayoutPanel1.Controls.Remove(controltoremove)
controltoremove.Dispose()
Application.DoEvents()
End While
Кажется, это работает (так как я больше не вижу свои элементы управления внутри моего окна FlowLayoutPanel1), но как только я доберусь до этой части кода:
My.Computer.FileSystem.DeleteFile("C:\wamp\www\img\" & subitem("id").ToString.Replace("""", "") & ".jpg")
Он говорит мне, что изображение в настоящее время используется??? Поскольку я разместил эти элементы управления (которые имеют эти изображения в качестве фонового изображения), не должен ли я удалить файл изображения ??
Чтобы создать кнопки внутри FlowLayoutPanel, я использую это:
For Each subitem As JObject In item.Values
Dim newPictureBox As New Button
Dim Client As New WebClient
strID = "http://graph.facebook.com/" & subitem("id").ToString.Replace("""", "") & "/picture?width=126&height=114"
strName = subitem("name").ToString
Client.DownloadFile(strID, "C:\wamp\www\img\" & subitem("id").ToString.Replace("""", "") & ".jpg")
Client.Dispose()
Dim bmp As New Bitmap(Image.FromFile("C:\wamp\www\img\" & subitem("id").ToString.Replace("""", "") & ".jpg"))
newPictureBox.BackgroundImage = Image.FromFile("C:\wamp\www\img\" & subitem("id").ToString.Replace("""", "") & ".jpg")
newPictureBox.Tag = subitem("id").ToString.Replace("""", "")
newPictureBox.Name = "img" & intX
newPictureBox.Width = bmp.Width.ToString()
newPictureBox.Height = bmp.Height.ToString()
FlowLayoutPanel1.Controls.Add(newPictureBox)
AddHandler newPictureBox.Click, AddressOf newPictureBox_Click
intX += 1
imgDir.Add(strName, subitem("id").ToString.Replace("""", ""))
bmp.Dispose()
Next
И похоже, что проблема заключается в затемнении новой кнопки PictureBox как новой кнопки. если я добавлю
newPictureBox.dispose()
в конце этого кода выше он работает с удалением изображений из каталога... но никогда не отображает изображения внутри кнопок, чтобы начать, когда я это сделаю: o/
Что я буду делать неправильно?