在winform窗体上拖一个flowLayoutPane,一个Button,项目中再创建一个用户控件UcControl,用户控件上放几十个子控件

private void button1_Click(object sender, EventArgs e)
{
try
{
DateTime startTime = DateTime.Now; flowLayoutPanel1.Controls.Clear();
for (int i = ; i < Controlcount; i++)
{
UcControl v = new UcControl();
v.Width = ;
v.Height = ;
flowLayoutPanel1.Controls.Add(v); }
slExecutedTime.Text = (DateTime.Now - startTime).ToString();
}
catch (Exception exception)
{
Console.WriteLine(exception);
throw;
}
}

使劲点按钮,过一会弹出创建句柄出错。解决办法,加上红色部分就好了,再使劲点也不会出问题。

private void button1_Click(object sender, EventArgs e)
{
try
{
DateTime startTime = DateTime.Now;
DeleteChilds(flowLayoutPanel1);
flowLayoutPanel1.Controls.Clear();
for (int i = ; i < Controlcount; i++)
{
UcControl v = new UcControl();
v.Width = ;
v.Height = ;
flowLayoutPanel1.Controls.Add(v); }
slExecutedTime.Text = (DateTime.Now - startTime).ToString();
}
catch (Exception exception)
{
Console.WriteLine(exception);
throw;
}
}

      private void DeleteChilds(Control control)
        {
            while (control.Controls.Count > 0)
            {
                if (control.Controls[0] != null)
                {
                    //DeleteChilds(control.Controls[0]);
                    control.Controls[0].Dispose();
                }
                
            }
        
        }
 

大量界面刷新时手动Dispose也是有必要的的更多相关文章

  1. Swing界面刷新问题(转)

    在Java Swing编程中,往往会遇到需要动态刷新界面的时候,例如动态刷新JLabel的文本,JTextField里的文本等等.但是往往却没有达到我们预期的效果,我相信很多朋友都遇到过本文将要说的这 ...

  2. ASP.NET 使用Session,避免用户F5刷新时重复提交(转)

    1.使用Session,避免用户重复提交(F5刷新时) 0.起因         当用户上传文件后F5刷新浏览器会导致文件的重复提交和相关程序的重复执行.   1.实现原理         由于刷新提 ...

  3. react+antd分页 实现分页及页面刷新时回到刷新前的page

    antd框架地址:https://ant.design/index-cn 利用antdUI框架做了个分页,其他功能都没问题,但是页面跳转后刷新会回到第一页,经过学习,在组件里增加了hash值,详情请看 ...

  4. vue常见问题处理 -- 页面刷新时,如何保持原有vuex中的state信息

    一.页面刷新时,如何保持原有vuex中的state信息 页面刷新后,原有的 vuex 中的 state 会发生改变,如果在页面刷新之前,可以将 state 信息保存,页面重新加载时,再将该值赋给 st ...

  5. Android界面刷新之invalidate与postInvalidate的区别

    Android的invalidate与postInvalidate都是用来刷新界面的. 在UI主线程中,用invalidate():本质是调用View的onDraw()绘制. 主线程之外,用postI ...

  6. sharepoint 2010 页面刷新时滚动条位置保持不变 Controlling scrollbar position on postback

    sharepoint 2010 页面刷新时滚动条位置保持不变 Controlling scrollbar position on postback在sharepoint 2010中,如果当前页面的篇幅 ...

  7. Android之界面刷新(invalidate和postInvalidate使用)

    Android中实现view的更新有两组方法,一组是invalidate,另一组是postInvalidate,其中前者是在UI线程自身中使用,而后者在非UI线程中使用. Android提供了Inva ...

  8. Android界面刷新

    Android的invalidate与postInvalidate都是用来刷新界面的,用法区别在于: 1)invalidate():实例化一个Handler对象,并重写handleMessage方法调 ...

  9. Android界面刷新方法

    Android提供了Invalidate方法实现界面刷新,但是Invalidate不能直接在线程中调用,因为他是违背了单线程模型:Android UI操作并不是线程安全的,并且这些操作必须在UI线程中 ...

随机推荐

  1. ESXi内虚拟机带快照与不带快照的情况下简单性能对比.

    1. 两个虚拟机配置相同都为2vCPU 8G内存 一个虚拟机内包含较多的快照且有内容梗概 一个虚拟机不包含快照直接只有一个虚拟机的vmdk磁盘文件 操作系统未windows server 2008r2 ...

  2. python 时间转换相关

    最近需要操作时间的地方相当的多,包括打点,包括时间转换. 罗列最近遇到的两个需求. 1. 关于上篇文章写的base64上传图片的问题,我使用了打点来计算解码需要多少时间.这个对时间精度要求是比较高的. ...

  3. IDEA Maven 项目默认编译项目为JDK 1.5

    昨天晚上遇到一个问题,我在idea中创建了有个maven项目,想使用jdk1.8的lambda表达式,结果提示我错误,是1.8才可以.当时我想我的jdk就是1.8啊.经过各种搜索,才知道maven默认 ...

  4. Test Scenarios for Excel Export functionality

    1 File should get exported in proper file extension2 File name for the exported excel file should be ...

  5. Java之枚举举例

    package enumdemo; /** * 枚举类 */ public enum MAPPER { // 实例 ELEMENT_NAME("mapper"), ATTRIBUT ...

  6. yield与递归的组合运用

  7. nginx-日志统计

    #!/bin/bash fd=/tmp/log# pv 点击量echo "###################点击量 --$pv-- #########################&q ...

  8. BZOJ1827[USACO 2010 Mar Gold 1.Great Cow Gathering]——树形DP

    题目描述 Bessie正在计划一年一度的奶牛大集会,来自全国各地的奶牛将来参加这一次集会.当然,她会选择最方便的地点来举办这次集会.每个奶牛居住在 N(1<=N<=100,000) 个农场 ...

  9. 解决操作WordPress时提示输入FTP信息

    WordPress安装个插件,提示输入FTP信息. 出现这个的问题就是Nginx的执行身份非文件属主身份. 解决方法: 假设你的wordpress安装目录为/data/wwwroot/default/ ...

  10. MT【71】数列裂项放缩题

    已知${a_n}$满足$a_1=1,a_{n+1}=(1+\frac{1}{n^2+n})a_n.$证明:当$n\in N^+$时, $(1)a_{n+1}>a_n.(2)\frac{2n}{n ...