方法一: C#的FlowlayoutPanel添加一定数据量的控件后就会空白,通过虚拟列表方式可以解决这个问题. 1.创建一个包含ScrollPanel和滚动条的用户控件,定义一个List,添加控件时,都添加到这个List中. 2.拖动滚动条时,计算出要显示的控件,清空之前的控件,将要显示的控件从List中取出加入Controls中.这样同时显示的控件不超过10个,速度就很快. 方法二: 平时显示时使用绘制,而不是直接创建控件,所有的控件都实时计算生成,当需要编辑时才创建控件,这种方法比较繁琐.