出处:http://www.tuicool.com/articles/FNzURb 概述 C#Winform编程中,跨线程直接更新UI控件的做法是不正确的,会时常出现“线程间操作无效: 从不是创建控件的线程访问它”的异常。处理跨线程更新Winform UI控件常用的方法有4种: 1. 通过UI线程的 ...
分类:
编程语言 时间:
2017-05-07 14:57:30
阅读次数:
283
ssInfo.LayoutStyle = ToolStripLayoutStyle.StackWithOverflow;//StatusStrip 控件 tsslUpdate.Alignment = ToolStripItemAlignment.Right;//StatusStrip 中的 Tool... ...
Visual Studio里的摘要:处理当前在消息队列中的所有 Windows 消息。 交出CPU控制权,让系统可以处理队列中的所有Windows消息 比如在大运算量循环内,加Application.DoEvents可以防止界面停止响应 因为winform的消息循环是一个线程来处理,那么假如你的某个 ...
分类:
移动开发 时间:
2017-05-07 00:18:45
阅读次数:
189
Timer控件: 组件中的最后一个控件,功能是可以根据用户自定义的时间间隔来触发时间,不会印象窗体本身的其他事件进行。 属性: Enable 设置控件是否启用 Interval 设置事件的频率,以毫秒为单位 事件只有一个:Tick事件 例:使用timer控件获取当前时间并即时变动 三级联动[省,市, ...
1.修改列名 一般情况下,从数据库里面读取的列名是英文或者拼音,但是,有时候显示需要中文,这样就需要修改列名了。 dgv.Columns[0].HeaderCell.Value="编号"; 或者 dgv.Columns[0].HeaderText="编号"; Columns数组从0开始,0代表第一列 ...
一直很羡慕和佩服园子中伍华聪的界面设计和布局。好多年都没有真正写过C/S项目了,今天翻出来6年前刚开始学习WinForm的时候写的一个简单的HR管理系统,思绪一下子很复杂,记得是6年前的夏天,天气很热,租住的房子里没有空调,身边放个扇子,人家周末出去玩的时候,我还在拼命的敲着代码,一心只想着好好提高 ...
用户控件: 相当于自定义的一个panel 里面可以放各种其他控件,并可以在后台一下调用整个此自定义控件。 使用方法:在项目上右键、添加、用户控件,之后用户控件的编辑与普通容器控件类似。如果要在后台往窗体中添加, 将其实例化,然后添加到想要添加的容器的Control集合中。 动态创建添加控件: 配合上 ...
进程:一个进程,代表一个程序 线程:一个程序,有多个线程. 为什么要使用多线程操作:一个窗体,在创建的时候,默认会生成一个主线程,这个主线程会操作窗体的移动等操作,在执行需要等待时间的方法时,如果没有多线程操作,窗体是无法进行移动的,并且关闭之后,方法还会继续运行,会引起程序故障.因此使用多线程操作 ...
分类:
编程语言 时间:
2017-05-04 12:06:45
阅读次数:
213
ListView控件是一个winform自带的表格型的应用数据展示控件 1、先设置列,设置视图属性选择Details。 添加列,修改列名。 2、编辑项(添加行数据) 添加一个ListViewItem对象,该对象的Text对应着是第一列的数据, 在该对象的SubItems属性的集合中设置该行数据后面几 ...
一、打印控件 第一步先把打印对象搞出来。 - printDocument 打印对象(将要打印的内容放到该对象里,从该对象里取内容打印) 设置他的PrintPage事件(对于要打印的每一页触发一次) - pageSetupDialog 打印设置对话框 - printPreviewDialog 打印预览 ...