![](https://img-blog.csdnimg.cn/20201014180756918.png?x-oss-process=image/resize,m_fixed,h_64,w_64)
WinForm学习使用
文章平均质量分 81
Jimmy-G
自动化控制专业,医疗及自动控制软件研发/管理,小闷骚,半吊子高级程序员,思想高手,编程低手,典型眼高手低。愿交天下朋友!
展开
-
MD5算法之C#程序描述(转)
由于本人对MD5算法不太明确,今天在一片文章中看到了关于MD5算法的描述,特转摘至此,一为防止忘记,二为分享,具体内容如下: MD5算法描述 当我要写一个MD5算法的程序时,发现中英文的语言描述都有一些不确切的地方,某些个细节 讲得不清楚,或者说很费解。最后不得不拿出C语言的源程转载 2011-07-10 18:22:01 · 595 阅读 · 0 评论 -
精确获取时间(QueryPerformanceCounter)
LARGE_INTEGER tima,timb;QueryPerformanceCounter(&tima);在 Windows Server 2003 和 WindowsXP 中使用 QueryPerformanceCounter 函数的程序可能执行不当QueryPerformanceCounter 來精確計算執行時間QueryPerformanceCounter 來精確計算執行转载 2013-08-21 12:25:15 · 1113 阅读 · 0 评论 -
C# String.Format 数字格式化输出
最近做项目遇到一些文本需要格式化输出,特别是时间日期,以前真没碰到过,在网上找了点资料,觉得不错!分享一下。int a = 12345678;//格式为sring输出// Label1.Text = string.Format("asdfadsf{0}adsfasdf",a);// Label2.Text = "asdfadsf"+a.ToString()+"ads转载 2013-08-15 16:46:23 · 1190 阅读 · 0 评论 -
C#中创建、打开、读取、写入、保存Excel的一般性代码
1 Excel对象微软的Excel对象模型包括了128个不同的对象,从矩形,文本框等简单的对象到透视表,图表等复杂的对象.下面我们简单介绍一下其中最重要,也是用得最多的四个对象。(1) Application对象。Application对象处于Excel对象层次结构的顶层,表示Excel自身的运行环境。 (2) Workbook对象。Workbook对象直接地处于Application转载 2013-08-28 22:07:50 · 2223 阅读 · 0 评论 -
C#3.0新特性(二)- 初始值设定项
一、自动属性: 在C# 2.0中,我们对成员进行封装,也就是自动属性,如下示例:private int m_one;public int One{ get { return m_one; } set { m_one = value; }}这种方式只需写第一句代码,然后用Visual Studio的Refactor->Encapsulate Field功能,很方便,也转载 2013-09-10 16:09:54 · 1094 阅读 · 0 评论 -
ArrayList用法整理
System.Collections.ArrayList类是一个特殊的数组。通过添加和删除元素,就可以动态改变数组的长度。 一.优点1、支持自动改变大小的功能2、可以灵活的插入元素3、可以灵活的删除元素 二.局限性跟一般的数组比起来,速度上差些 三.添加元素1.publicvirtualintAdd(objec转载 2013-09-15 13:06:12 · 649 阅读 · 0 评论 -
开始设计模式的学习
做了.NET C#相关工作也将近两年了,一直在做基础的编码及界面设计工作,最近解放出来,终于可以学一点设计模式类的东西了。最近会比较多的关注设计模式及软件架构类的东西,希望有好东东的朋友们别忘了给我分享下,小弟在此先谢过了!废话不多说,让我们迈入设计模式的大门吧!。。。原创 2013-09-17 09:57:37 · 687 阅读 · 0 评论 -
C#中的多线程与UI响应-防界面假死的多线程
一.概述在使用C#进行应用程序设计时,经常会采用多线程的方式进行一些后台任务的工作。对于不同的应用场景,使用的策略也不尽相同。1.后台循环任务,少量UI更新:例如批量上传文件,并提供进度。这种情况使用BackgroundWorker组件是非常好的选择。2.耗时的后台任务:这里的耗时任务是指一个时间较长的任务,并且不能精确获取进度,如:调用一个远程WebServi转载 2013-10-08 20:11:03 · 1308 阅读 · 0 评论 -
C#开发的应用程序做退出程序的代码
Application.Exit();//好像只在主线程可以起作用,而且当有线程,或是阻塞方法的情况下,很容易失灵this.Close();//只是关闭当前窗体。Application.ExitThread();//退出当前线程上的消息循环,并关闭该线程上的所有窗口。 也会失灵Environment.Exit(0); //前面三种方法都不能很好的退出程序,此方法可以完全退出程序,这个要转载 2013-08-28 11:56:19 · 1489 阅读 · 0 评论 -
C# 32位程序访问64位系统注册表
摘要:我的上一篇文章已经阐述了“32位程序和64位程序在64位平台上读\写注册表的区别”,那么接下来将要回答上篇所留下来的一个问题:32位程序如何访问64位系统注册表(即:64位程序所访问的注册表位置)。我的上一篇文章已经阐述了“32位程序和64位程序在64位平台上读\写注册表的区别”,那么接下来将要回答上篇所留下来的一个问题:32位程序如何访问64位系统注册表(即:64位程序转载 2013-09-26 11:57:30 · 1074 阅读 · 0 评论 -
C# 32位/64位系统下程序读写注册表之差异
C# 32位/64位程序读写注册表之差异用C#实现注册表的读\写是一件很容易的事情,在此不做详细的讲解。用C#操作注册表主要用到的两个函数为(已经渗透到下面的实例程序中,注:要引入Microsoft.Win32命名空间):1:读取键值-->Registry.LocalMachine.OpenSubKey(“..Key的路径...”, true),这里的第2个bool类型的参数含义为:标转载 2013-09-26 09:38:42 · 1565 阅读 · 0 评论 -
.net连接Access 2000或Access 2007
ACCESS 2000Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;User Id=admin;Password=;带密码的Provider=Microsoft.Jet.OLEDB.4.0;Data Source=C:\mydatabase.mdb;Jet OLEDB:Database Pa原创 2013-11-27 22:19:20 · 993 阅读 · 0 评论 -
C#3.0新特性(三)- 详说自动属性和匿名类型
一、自动实现的属性 全称应该叫自动实现的属性(Auto-implemented properties),在上一篇中,给了简单的例子,说的是当属性访问器中不需要其他逻辑时,自动实现的属性可使属性声明变得更加简洁。如前边的例子,在C# 2.0中:private int m_one;public int One{ get { return m_one; } set { m_one转载 2013-09-10 16:47:28 · 1491 阅读 · 0 评论 -
VisualStudio开发工具中的C#主流控件属性及事件汇总(菜鸟必备)
C#控件及常用设计整理1、窗体 1、常用属性 (1)Name属性:用来获取或设置窗体的名称,在应用程序中可通过Name属性来引用窗体。 (2)WindowState属性:用来获取或设置窗体的窗口状态。 取值有三种: Normal (窗体正常显示)、 Minimized(窗体以最小化形式显示)和 Maximized(窗体以最大化形式显示)。 (3)StartPos原创 2013-10-08 20:38:43 · 8572 阅读 · 3 评论 -
C# 窗体间传值方法大汇总(转)
第一种方法:创建一个类,里面声明用于存储接收的字段。传的时候存储于字段中,要用的时候,直接类名.字段名 进行调用。(这种方法传递是双向的) 第二种方法:1.在Form1里定义public string Name = "*****" 2. 在Form2里创建Form1对象,Form1 f = new Form1(); 然后就可以转载 2015-08-18 19:52:38 · 779 阅读 · 0 评论 -
三种Timer的区别及使用
三种Timer控件的区别1、 System.Windows.Form.Timer:基于UI层的计时器,与UI在同一个线程,在timer的事件处理中,UI层失去响应。单线程组件,精度限定为 55 毫秒。事件由Tick触发。2、 System.Timers.Timer:基于服务器的计时器,与UI不在同一个线程。多线程组件。转载 2011-06-08 23:48:00 · 2233 阅读 · 0 评论 -
总结C#获取当前路径的7种方法
总结C#获取当前路径的7种方法摘要:本文介绍了C#获取当前路径的7种方法,不同的方法有不同的作用。C#获取当前路径的方法如下: 1. System.Diagnostics.Process.GetCurrentProcess().MainModule.FileName -获取模块的完整路径。 2. System.Environment.Curre转载 2013-06-08 10:51:07 · 890 阅读 · 0 评论 -
c#学习必修:Microsoft Win32 to Microsoft .NET Framework API Map
最近做一个C#的项目,由于以前从来没有接触过改编程语言,对.Net也是很不熟悉,导致做这个项目的进度很缓慢,经过一个多月的“挣扎”,现在这个项目已经有一些眉目了。今天看了cto一位前辈的博客,其中提到了怎么使用Win32 API编程,我也看了一下,全是E文,果然比较锻炼E文水平。原创 2011-07-10 17:37:02 · 1743 阅读 · 0 评论 -
一些C#的基础知识(转)
转载至C#学习网的一片不错的文章,介绍的是一些C#的基础知识,虽然文字编排上不怎么样,但是字字珠玑,全是道理啊!值得收藏,值得多看!以下为转载内容: 引用类型是类型安全的指针,它们的内存是分配在堆(保存指针地址)上的。String、数组、类、接口和委托都是引用类型。强制类型转换转载 2011-07-10 17:58:44 · 703 阅读 · 0 评论 -
C#.net winform skin 皮肤大全(转)
今天逛老骆驼的博客,发现了好东西,以后可以弄些漂亮的控件来玩玩!不多说,上内容!1. 东日IrisSkin IrisSkin 共有两个版本,一个是IrisSkin.dll 用于.Net Framework1.0/1.1 和IrisSkin2.dll 用于.Net Framewor转载 2011-07-11 23:25:26 · 955 阅读 · 0 评论 -
轻松掌握Windows窗体间的数据交互
轻松掌握Windows窗体间的数据交互 作者:郑佐 2004-04-05 Windows 窗体是用于 Microsoft Windows 应用程序开发的、基于 .NET Framework 的新平台。此框架提供一个有条理的、面向对象的、可扩展的类集,它使您得以开发丰富的 Windows 应用程序。一个Wind转载 2013-04-22 14:55:19 · 674 阅读 · 0 评论 -
让C#程序自动以管理员方式运行
最近在用C#做一个简单的小软件时,发现软件在XP、和Windows 2003下面运行都很正常,在Win7下面双击打开,却会出问题,导致软件不能使用。把软件打开时“以管理员方式运行”,软件正常运行,看来啊,还是得默认就给软件加上管理员运行权限。那该怎么做呢?其实也非常简单,点击右键,打开项目属性->安全性选项,如下图所示:首先启用ClickOnce安全设置,然后选中这转载 2013-05-07 12:57:24 · 863 阅读 · 0 评论 -
C# WinForm实现Win7 Aero磨砂效果
在Vista系统之后,微软为窗体程序提供了Aero磨砂的效果,如下图。那么用C#如何来实现这种磨砂效果呢?背景为我的桌面那先上代码吧:Code[StructLayout(LayoutKind.Sequential)] public struct MARGINS { public int Left; pu转载 2013-05-07 12:55:49 · 2306 阅读 · 0 评论 -
C# 调用外部程序Process类
在程序开发中,一个程序经常需要去调用其他的程序,C#中Process类正好提供了这样的功能。它提供对本地和远程进程的访问并使您能够启动和停止本地系统进程。一、启动进程实例CodeProcess myProcess = new Process(); try { myProcess.StartInfo.UseShellExecute转载 2013-05-07 12:58:35 · 1352 阅读 · 0 评论 -
WinForm自定义控件–TextBox扩展
一、简单回顾在前两节中,对Panel和GroupBox控件进行了相关的扩展应用,主要都是设置控件的边框以及边框颜色等。本节,继续对WinForm现有的控件TextBox进行扩展,来满足实际开发中的需要。 二、TextBox扩展WinForm现有的TextBox控件功能已然相当强大了,但有些时候仍然不能满足一些实际开发的需要,本节针对开发中的需求问题,对控件进行了以下转载 2013-05-07 13:45:06 · 4088 阅读 · 0 评论 -
WinFrom自定义控件–GroupBox扩展
一、简单回顾在上一篇中,介绍了如何去扩展WinFrom现有控件来实现一个新的控件。扩展控件的主要方法就是根据需求,提取所需控件的相关特定的属性和方法,对属性和方法进行扩展,以此来实现新的控件。在扩展控件开发过程中,需要实现OnPaint事件代码或者重写WndProc回调函数方法。 二、扩展GroupBox控件在本节中,主要在WinFrom窗体控件GroupB转载 2013-05-07 13:47:18 · 2812 阅读 · 0 评论 -
WinFrom自定义控件–Panel扩展
一、自定义控件介绍在WinFrom中用户自定义控件大概有三种形式:(1)、 自定义控件 :通过继承Control类创建一个新的用户控件。Control 类提供控件所需的所有基本功能(包括鼠标和键盘处理事件),但不提供控件特定的功能或图形界面。 在开发过程中,需要完成Control类的OnPaint事件代码,或者重写WndProc方法,需要使用到GDI+和Win32 API编程。转载 2013-05-07 13:49:11 · 7566 阅读 · 0 评论 -
C#中子界面按钮改变父界面属性的一种简单方法
昨天师妹问了我一个问题,说想做一个小程序,在一个主界面使用按钮创建一个子界面显示同时隐藏自己,在子界面的一个按钮可以改变主界面的显示属性(Visible)使主界面显示,然后销毁自己。一开始我想到了使用线程及委托进行界面传值,因为以前用过,但是后来觉得这样做有点复杂,又线程又委托的,总觉得还有更简单的方式,所以就一直尝试,想了N种办法,最终根据别人的提供的思路,找到了最简单的方式。这种方法不原创 2013-05-24 09:07:13 · 1693 阅读 · 0 评论 -
C#中禁止Winform窗体关闭
在winform中,常常会控制一些关键界面不能让用户关闭,怎么做比较好呢?在系统中默认是不能够禁用窗体的关闭功能,但是,有时我们需要这种功能来屏蔽用户"随便"或不小心关闭造成的系统问题。 其实方法很简便,只要将以下一段代码添加到窗体累中就可以实现禁止窗体关闭protected override void WndProc(ref Message m) {const i原创 2013-06-04 13:57:05 · 4238 阅读 · 0 评论 -
C#代码艺术
谁都会写代码!几个月的编程经验可以让你写出“可运行应用程序”。让它可运行容易,但是以最有效率的方式编码就需要下更多的功夫!要知道,大多数程序员在写“可运行代码”,而不是“高效代码”。我们在这个指南课程前面提到,你想成为你们公司“最尊贵的专业人员”吗?写“高效代码”是一项艺术,你必须学习和实践它。注记:1、Pascal 大小写形式-所有单词第一个字母大写,其他字母小写。2、Camel 大小写形式-除转载 2013-06-05 19:12:01 · 751 阅读 · 0 评论 -
C# 无边框窗体随意拖动和改变尺寸
C# 无边框窗体随意拖动和改变尺寸const int HTLEFT = 10;const int HTRIGHT = 11;const int HTTOP = 12;const int HTTOPLEFT = 13;const int HTTOPRIGHT = 14;const int HTBOTTOM = 15;const int HTBOTTOMLEFT = 0x10;转载 2013-06-08 10:53:07 · 1451 阅读 · 2 评论 -
关于C#WinForm的datagridview控件的使用经验及技巧收集(持续更新)
让DataGridView显示行号在Winform窗体中选中datagridview控件,在其“RowPostPaint”触发事件属性中双击自动生成事件函数或者在右侧的下拉框中选中已写好的事件函数选中的事件函数如下(如是双击自动生成的,就把函数内的代码复制到自动生成的函数内即可): private void dgv_ptt_docs_RowPostPaint(原创 2015-06-26 18:11:48 · 4593 阅读 · 0 评论