晕,你把有用的控件选中,然后ctrl+x剪切,再全选窗体内控件,删除!删完了再粘贴!
创新互联坚信:善待客户,将会成为终身客户。我们能坚持多年,是因为我们一直可值得信赖。我们从不忽悠初访客户,我们用心做好本职工作,不忘初心,方得始终。十多年网站建设经验创新互联是成都老牌网站营销服务商,为您提供成都网站制作、成都网站建设、网站设计、H5响应式网站、网站制作、成都品牌网站建设、小程序开发服务,给众多知名企业提供过好品质的建站服务。
哈
利用键值类Private labKey As Dictionary(Of String, Label)来添加Label
Key存入RSText.Text.ToUpper, Value存入Label
labKey.Add (RSText.Text.ToUpper,lab)
LblListBox.Items.Remove(LblListBox.SelectedItem)
RdrScreen.Controls.Remove(labKey(LblListBox.SelectedItem.ToSiring))
labKey.Remove(LblListBox.SelectedItem.ToSiring)
不过你这个方法很耗费系统资源! Dim Lbl(0) As Label这个数组去掉。
删除控件的时候直接用下面这个函数;
Private Sub RemoveLabel(textValue As String)
Dim labType As Type = GetType(Label) '获取Label类型
For Each ctr As Control In RdrScreen.Controls '历遍窗体控件集
'如果控件类型是Label,并且Label得文本等于textValue
If ctr.GetType Is labType AndAlso ctr.Text = textValue Then
RdrScreen.Controls.Remove(ctr) '移除控件
Return '退出函数
End If
Next
End Sub
RemoveLabel(LblListBox.SelectedItem.ToString)
因为foreach是通过迭代来工作的,当你删除了一个元素后,这个集合内部元素之间的关系就会被破坏,所以你得不到正确的结果
你最好用for循环,或者先将要删除的控件放到一个数组中,foreach结束之后,统一删除,
到设计界面里面,在属性面板里面选择TopToolStripPanel,点一下左边标签栏(就是显示已打开文件的地方)的空白处,按delete
或者直接用记事本进入.design.vb文件删去和TopToolStripPanel有关的代码
再看看别人怎么说的。
就一句话Me.Controls.Clear() 把这句话放在操作按钮事件里就可以了
你删除控件,在代码上表现为将代码绑定的事件删除,也就是把 “Handles......”去掉了,并不是把代码本身删除。