C# winform程序动态加载控件,总是窗体先出现,窗体上的控件出现屏幕背景,闪一下 才出现控件,出现的时间也不同步

问题描述

初始化显示控件,或者是alt+tab切换页面,的时候都是整个页面先出来,就是有个别的控件出来的很慢,而且带有屏幕的背景色一闪而过,才完全加载出来

解决方案

解决方案二:
Up,求解答啊,界面现在初始化的时候,有点闪,接受不了,
解决方案三:
vs自动生成的Form1.Designer.cs中,控件都是用下面代码包裹起来的。你就没想过是为什么吗?this.SuspendLayout();......this.ResumeLayout(false);this.PerformLayout();
解决方案四:
估计控件是Paint的,当界面切换,触发OnPaint导致这个情况利用invoke,进行后台的线程处理,这样界面可能不阻塞,但控件绘制的时间可能更长也可以尝试获取可视区域的项目,然后仅绘制这些项目
解决方案五:
引用2楼xuzuning的回复:

vs自动生成的Form1.Designer.cs中,控件都是用下面代码包裹起来的。你就没想过是为什么吗?this.SuspendLayout();......this.ResumeLayout(false);this.PerformLayout();

在初始化自定义控件的时候使用了布局挂起了的,一样还是会,主要是现在使用的windows自带的label切换的时候也是会闪烁(个别会这样,我对比过,发现属性都是设置一样的。)this.PanelItemDisplay.SuspendLayout();_ScreenHandle.InitContent();this.PanelItemDisplay.ResumeLayout();
解决方案六:
引用3楼qqamoon的回复:

估计控件是Paint的,当界面切换,触发OnPaint导致这个情况利用invoke,进行后台的线程处理,这样界面可能不阻塞,但控件绘制的时间可能更长也可以尝试获取可视区域的项目,然后仅绘制这些项目

现在是winform自带的控件也会闪烁,有些label会有些label不会,,,对不过发现属性都是一样的,就是不知道为什么有些会闪有些不会闪

时间: 2024-11-03 21:46:40

C# winform程序动态加载控件,总是窗体先出现,窗体上的控件出现屏幕背景,闪一下 才出现控件,出现的时间也不同步的相关文章

winform程序Datagridview加载数据,数据刷新问题

问题描述 需求:在一个窗体上使用datagridview加载数据库中的数据(一个视图),该视图里的数据随着时间的推移会增长,所以就需要定时的检索数据并显示,数据量大概一秒钟会增长50条左右,最终该视图中的数据会达到15w行左右.根据数据的内容不同,每行的颜色不同.目前的做法:使用datagridview.datasource=dt的方法,定时重新检索数据库,然后每次重新datagridview.datasource=dt,每次绑定后再遍历一遍数据,刷新每行的颜色,然后再定位刷新前浏览的当前行.运

携程Android App的插件化和动态加载框架

携程Android App的插件化和动态加载框架已上线半年,经历了初期的探索和持续的打磨优化,新框架和工程配置经受住了生产实践的考验.本文将详细介绍Android平台插件式开发和动态加载技术的原理和实现细节,回顾携程Android App的架构演化过程,期望我们的经验能帮助到更多的Android工程师. 需求驱动 2014年,随着业务发展需要和携程无线部门的拆分,各业务产品模块归属到各业务BU,原有携程无线App开发团队被分为基础框架.酒店.机票.火车票等多个开发团队,从此携程App的开发和发布

高手看看 急得很 水晶报表动态加载显示的问题

问题描述 公式绑定,实现代码是(总是报该字段名无效,怎么回事呢!!):CR_Document.DataDefinition.FormulaFields["paraField1"].Text="{"+ds.Tables["item"].TableName+"."+ds.Tables["item"].Columns[0].ColumnName.ToString()+""}";str

使用PHP+AJAX让WordPress动态加载文章的教程_php实例

为什么要动态加载文章? 1. 快速向访客展示页面文章很容是包含大量文字和多媒体资源 (如: 图片, 视频, 音乐), 加载这些内容需要占用很多的时间. 如果你的页面上存在大量文章, 当访客发现页面久久没有加载完成就感到不耐烦. 这是动态加载文章的主要目的. 2. 让文章列表化使页面上的文章成为一个列表, 减少页面的空间占用, 访客可以方便的移动到页面下方, 提高旧文章被点击的几率. 并且你可以在页面上放置更多的文章而不用担心页面过长. 为什么不动态加载文章? 1. 对搜索引擎不友好搜索引擎优化的

Winform开发框架之客户关系管理系统(CRM)的开发总结系列4-Tab控件页面的动态加载

在前面介绍的几篇关于CRM系统的开发随笔中,里面都整合了多个页面的功能,包括多文档界面,以及客户相关信息的页面展示,这个模块就是利用DevExpress控件的XtraTabPage控件的动态加载实现的,本篇文章主要介绍两种方式的动态加载,一个是对用户控件(UserControl)模块的动态加载,一个是对普通窗体(Form)的动态加载,通过这两种方式,我们有时候可以动态实现很丰富的界面效果. 1.用户控件(UserControl)模块在Tab控件中的动态加载 参考了很多CRM的系统,一般都是把CR

Winform开发客户关系管理系统(CRM)总结 4 Tab控件页面的动态加载

在前面介绍的几篇关于CRM系统的开发随笔中,里面都整合了多个页面的功能,包括多文档界面,以 及客户相关信息的页面展示,这个模块就是利用DevExpress控件的XtraTabPage控件的动态加载实现的, 本篇文章主要介绍两种方式的动态加载,一个是对用户控件(UserControl)模块的动态加载,一个是对 普通窗体(Form)的动态加载,通过这两种方式,我们有时候可以动态实现很丰富的界面效果. 1.用户控件(UserControl)模块在Tab控件中的动态加载 参考了很多CRM的系统,一般都是

动态加载控件: 常见问题解决之道

动态加载控件貌似给很多程序员都带来了困扰,经常收到这样的邮件,干脆就写下面这个示 例来演示如何解决那些常见的问题吧. 其实常见的问题通常有这样两个: 1. 通常他们都通过一个按钮来添加一个UserControl 并将它们加入PlaceHolder 容器的 Controls 中.然后页面上就会有一个另外一个按钮,这个按钮什么相关的事也没做,就是做了 一次回发.这样的情况动态添加的控件就不翼而飞了. 2. 今天收到了一封邮件说是要追加控件,和上面的情况看上去好像不一样,但实质就是同 一回事. 原因:

android: 静态XML和动态加载XML混合使用,以及重写Layout控件

近期对android里面控件修改做了很多实验,由于公司需求很多,不得不重写很多控件.程序目标无非是:高效.轻巧.清晰.标准化   完成动态加载Layout有两种方法,依据个人喜好进行选择:   方法1:静态主Layout动态加载静态子Layout   首先构建子Layout:main2 [xhtml] view plaincopy <?xml version="1.0" encoding="utf-8"?>   <!--布局可以任意定义,此处拿线性

动态加载用户控件的组件!

动态|加载|控件 我们写用户控件的目的就是放到页面中去.根据不同的条件,我们可以改变加载的用户控件! 其实原理就是MasterPage的原理.这个MasterPage会在vs2005中提供,但是现在也可以实现. 在我的项目中就用到: MasterPage就四个类,其中容器就动态加载用户控件.这种功能在vs2005中将无处不在. 下面简单介绍一下动态加载叶面组件: 我们只需要改变用户组件的地址就可以动态改变加载的用户组件了. 在程序中动态改变SkinPath就可以了. 组件源码如下: using