Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/heroku/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Vb.net 动态清除流布局面板_Vb.net_Flowlayoutpanel - Fatal编程技术网

Vb.net 动态清除流布局面板

Vb.net 动态清除流布局面板,vb.net,flowlayoutpanel,Vb.net,Flowlayoutpanel,我尝试了几种不同的方法,这是我最新的: Dim i As Integer = 0 Dim ControlCount As Integer = SearchResults.Controls.Count Do Until i > ControlCount SearchResults.Controls.RemoveByKey(i) i += 1 Loop 搜索结果是流布局面板的名称 你知道怎么做吗?我只想删除面板中当前的所有内容 我也试过

我尝试了几种不同的方法,这是我最新的:

Dim i As Integer = 0
    Dim ControlCount As Integer = SearchResults.Controls.Count
    Do Until i > ControlCount
        SearchResults.Controls.RemoveByKey(i)
        i += 1
    Loop
搜索结果是流布局面板的名称

你知道怎么做吗?我只想删除面板中当前的所有内容


我也试过searchresults.items.clear之类的方法,但都没有用

你试过searchresults.Controls.clear()吗?FlowLayoutPanel具有控件属性。在文档中查找()可以看到这是一个Control.ControlCollection,在文档中查找它可以找到.Clear()方法

我怀疑你的控件没有0,1,2的键。。。(键应该是一个字符串,而不是一个整数)-也许您考虑的是RemoveAt方法()。但这不会像您所展示的那样起作用,因为每次删除一个控件时,控件的数量都会减少一个


因此,请尝试.Clear()方法,最好在IDE中设置,让它为您指出错误。

正如第一个响应所述,键是一个字符串。键是控件的Name属性。如果还想删除flowlayoutpanel及其内容,可以调用dispose方法,如下所示:

    If IsNothing(flpTechProductionNumbers.Controls.Find(Action, True).FirstOrDefault) Then
    Else
        flpTechProductionNumbers.Controls.Find(Action, True).First.Dispose()
        ' flpTechProductionNumbers.Controls.Find(Action, True).First.Controls.Clear()
    End If
如果您想通过索引访问控件,您应该能够将controls属性视为数组,并执行以下操作:

            flpTechProductionNumbers.Controls(i)