在ComBoBox控件中动态卸载控件的有关问题

在ComBoBox控件中动态卸载控件的问题
VB code
Private Sub Combo1_Click()
Unload Picture1(Val(Combo1.Text))
End Sub

Private Sub Command1_Click()
Load Picture1(1)
Picture1(1).Visible = True
End Sub

Private Sub Command2_Click()
Unload Picture1(1)
End Sub

Private Sub Form_Load()
Combo1.AddItem "1"
End Sub




控件要已加载的情况下,
为什么在Combo1_Click()事件中动态卸载控件会出现不能在该上下文中卸载
而在Command2_Click()事件中动态卸载控件就可以?


------解决方案--------------------
用combo1_change
------解决方案--------------------
可以使用 ItemData 属性来判断是否已加载
如:
VB code

Private Sub Combo1_Click()
   if Combo1.ItemData(Combo1.ListIndex)=1 Then
      Unload Picture1(Val(Combo1.List(Combo1.ListIndex)))
      Combo1.ItemData(Combo1.ListIndex)=0
   End If
End Sub
Private Sub Command1_Click()
   Load Picture1(1)
   Picture1(1).Visible = True
   Combo1.ItemData(1)=1
End Sub
...

------解决方案--------------------
为什么要unload,visibie = false?
------解决方案--------------------
不能在该上下文中卸载(错误 365)

某些情况下,不允许卸载窗体或窗体中的控件。此错误产生的原因及解决方法如下: 

在 ComboBox.的 Change、Click 或 DropDown 事件中有一个 Unload 语句。 
从事件中删除 Unload 语句。


------解决方案--------------------
探讨
VB codePrivateSub Combo1_Click()
Unload Picture1(Val(Combo1.Text))End