随笔分类 -  c#+Winform

应用开发
摘要:SQL Server中如何生成GUID C#.NET中如何生成和使用GUID 阅读全文
posted @ 2011-10-26 17:37 Bruce-He 阅读(1653) 评论(0) 推荐(2) 编辑
摘要:C#中double.tostring() C#保存小数位 C#四舍五入 阅读全文
posted @ 2011-10-25 18:06 Bruce-He 阅读(1601) 评论(0) 推荐(0) 编辑
摘要:C#命名规范 C#控件的缩写大全 阅读全文
posted @ 2011-09-30 09:55 Bruce-He 阅读(283) 评论(0) 推荐(0) 编辑
摘要:在VS2005中 如何打开VS2008创建的项目?(特此记下来,希望对遇到同样问题的人有所帮助!嘿嘿)今天有同事说用VS2008写的WINDOWS窗体项目COPY到家中,用VS2005打开时,提示这个项目是由高版本的VS创建的,无法打开.由于是个.NET2.0的项目,在VS2005和VS2008下对写程序的人没什么不同,目录结构也相同,所以修改一下配置文件,应该也能用VS2005打开项目.具体修改如下:用记事本打开解决方案文件(.sln),将Microsoft Visual Studio Solution File, Format Version 10.00# Visual Studio 20 阅读全文
posted @ 2011-09-26 16:04 Bruce-He 阅读(426) 评论(0) 推荐(0) 编辑
摘要:在写程序的过程中我们常常会遇到格式化字符串呀啥的,如:DataTime.ToString("yyyy-MM-dd")等,当然最常用的应该是String.Format了,非常方便好用!但有时有些格式记不住,只要认真分析这个规律,其实它很好记,很快就掌握了,我特意收集起来,希望对大家有所帮助!C#格式化数值结果表------------------------------------------------------字符-------- 说明------ 示例----------- 输出C货币string.Format("{0:C3}", 2)$2.000 阅读全文
posted @ 2011-09-25 23:17 Bruce-He 阅读(205) 评论(0) 推荐(0) 编辑
摘要:C#多线程间传入值和返回值问题 阅读全文
posted @ 2011-06-25 16:11 Bruce-He 阅读(504) 评论(0) 推荐(0) 编辑
摘要://冒泡排序 public static void PopSort(int[] arry) { for (int i = 0; i < arry.Length-1; i++) { for (int j = i; j < arry.Length-1; j++) { if (arry[i] > arry[j + 1]) { int temp = 0; temp = arry[i]; arry[i] = arry[j + 1]; arry[j + 1] = temp; } } } } //选择排序 public static void SelectSort(int[] arry) 阅读全文
posted @ 2011-06-04 23:48 Bruce-He 阅读(157) 评论(0) 推荐(1) 编辑
摘要:winform--记住密码 收藏 要引用IO包private string accountFilePath = Environment.GetFolderPath(Environment.SpecialFolder.ApplicationData) +"\\accounts.dat ";private IDictionary<string, string> accounts = new SortedList<string, string>();/// <summary> /// 记住密码 /// </summary> priv 阅读全文
posted @ 2011-06-04 23:34 Bruce-He 阅读(370) 评论(0) 推荐(0) 编辑
摘要:现在假设我们想要获得多个订阅者的返回值,以List<string>的形式返回,该如何做呢?我们应该记得委托定义在编译时会生成一个继承自MulticastDelegate的类,而这个MulticastDelegate又继承自Delegate,在Delegate内部,维护了一个委托链表,链表上的每一个元素,为一个只包含一个目标方法的委托对象。而通过Delegate基类的GetInvocationList()静态方法,可以获得这个委托链表。随后我们遍历这个链表,通过链表中的每个委托对象来调用方法,这样就可以分别获得每个方法的返回值:class Program4 { static void 阅读全文
posted @ 2011-06-04 23:33 Bruce-He 阅读(435) 评论(1) 推荐(0) 编辑
摘要:Observer设计模式简介上面的例子显然能完成我们之前描述的工作,但是却并不够好。现在假设热水器由三部分组成:热水器、警报器、显示器,它们来自于不同厂商并进行了组装。那么,应该是热水器仅仅负责烧水,它不能发出警报也不能显示水温;在水烧开时由警报器发出警报、显示器显示提示和水温。这时候,上面的例子就应该变成这个样子: // 热水器public class Heater { private int temperature; // 烧水 private void BoilWater() { for (int i = 0; i <= 100; i++) { temperature = i; } 阅读全文
posted @ 2011-06-04 23:33 Bruce-He 阅读(215) 评论(0) 推荐(0) 编辑
摘要:引言委托 和 事件在 .Net Framework中的应用非常广泛,然而,较好地理解委托和事件对很多接触C#时间不长的人来说并不容易。它们就像是一道槛儿,过了这个槛的人,觉得真是太容易了,而没有过去的人每次见到委托和事件就觉得心里别(biè)得慌,混身不自在。本文中,我将通过两个范例由浅入深地讲述什么是委托、为什么要使用委托、事件的由来、.Net Framework中的委托和事件、委托和事件对Observer设计模式的意义,对它们的中间代码也做了讨论。将方法作为方法的参数我们先不管这个标题如何的绕口,也不管委托究竟是个什么东西,来看下面这两个最简单的方法,它们不过是在屏幕上输出一句问 阅读全文
posted @ 2011-06-04 23:32 Bruce-He 阅读(241) 评论(0) 推荐(0) 编辑
摘要:C#实现程序的版本升级更新 收藏 我们做了程序,不免会有版本升级,这就需要程序有自动版本升级的功能。那么看看我是如何实现程序自动更新的。直接上代码:using System; using System.Collections.Generic; using System.Text; using System.Reflection; using System.IO; using System.Net; using System.Xml; namespace Update { /// <summary> /// 更新完成触发的事件 /// </summary> public 阅读全文
posted @ 2011-06-04 23:31 Bruce-He 阅读(1054) 评论(0) 推荐(0) 编辑
摘要:using System.Runtime.InteropServices; #region API [DllImport("user32.dll")] static extern void mouse_event(MouseEventFlag flags, int dx, int dy, uint data, UIntPtr extraInfo); [Flags] enum MouseEventFlag : uint { Move = 0x0001, LeftDown = 0x0002, LeftUp = 0x0004, RightDown = 0x0008, RightU 阅读全文
posted @ 2011-06-04 23:30 Bruce-He 阅读(1373) 评论(0) 推荐(0) 编辑
摘要:using System.Data.OleDb; //命名空间 private void button1_Click(object sender, EventArgs e) { string strConn = @"Provider=Microsoft.Jet.OLEDB.4.0;Data Source=student.xls; Extended Properties=Excel 8.0;"; OleDbConnection conn = new OleDbConnection(strConn) string sql = "select * from [stude 阅读全文
posted @ 2011-06-04 23:29 Bruce-He 阅读(686) 评论(0) 推荐(0) 编辑
摘要:跨线程调用窗体控件用户不喜欢反应慢的程序。在执行耗时较长的操作时,使用多线程是明智之举,它可以提高程序 UI 的响应速度,使得一切运行显得更为快速。在 Windows 中进行多线程编程曾经是 C++ 开发人员的专属特权,但是现在,可以使用所有兼容 Microsoft .NET 的语言来编写。不过Windows 窗体体系结构对线程使用制定了严格的规则。如果只是编写单线程应用程序,则没必要知道这些规则,这是因为单线程的代码不可能违反这些规则。然而,一旦采用多线程,就需要理解 Windows 窗体中最重要的一条线程规则:除了极少数的例外情况,否则都不要在它的创建线程以外的线程中使用控件的任何成员。本 阅读全文
posted @ 2011-06-04 23:28 Bruce-He 阅读(439) 评论(0) 推荐(1) 编辑
摘要:C#的Windows编程中多语言的实现作者:AspCool 属于c/c++分类 2010/9/9简介:这是C#的Windows编程中多语言的实现的详细页面,介绍了和c/c++,C#,#的,的W,Wi,in,nd,do,ow,ws,s编,编程,程中,中多,多语,语言,言的,的实有关的知识,加入收藏请按键盘ctrl+D,谢谢大家的观看!要查看更多有关信息,请点击此处 实现多语言的方法是通过配置文件实现,通过从配置文件中读取资源,然后在显示窗口的时候,即Load()方法中,动态显示相应的选择语言。 下面是在C#的Windows编程中实现多语言的步骤: 第一步:设置默认语言和修改默认语言 我们定义了一 阅读全文
posted @ 2011-06-04 23:27 Bruce-He 阅读(348) 评论(0) 推荐(0) 编辑
摘要://cpu频率using Microsoft.Win32;private int GetCPUFrequency() { RegistryKey rk = Registry.LocalMachine.OpenSubKey(@"HARDWARE\DESCRIPTION\System\CentralProcessor\0"); object obj = rk.GetValue("~MHz"); int CPUFrequency = (int)obj; return CPUFrequency; }//////////////////////////////// 阅读全文
posted @ 2011-06-04 23:27 Bruce-He 阅读(2428) 评论(0) 推荐(0) 编辑
摘要:using System;using System.Collections.Generic;using System.Text;using System.IO;using System.Xml;namespace AutoRunMgr{ public class XML { public static void CreateNode(string xmlpath,string node,string value) { if (!File.Exists(xmlpath)) { XmlDocument xmlDoc = new XmlDocument(); XmlElement root = xm 阅读全文
posted @ 2011-06-04 23:26 Bruce-He 阅读(159) 评论(0) 推荐(0) 编辑
摘要:using System;using System.Collections.Generic;using System.Drawing;using System.Windows.Forms;using System.Runtime.InteropServices;using System.IO;namespace ShowIcon{ [StructLayout( LayoutKind.Sequential)] public struct FileInfomation { public IntPtr hIcon; public int iIcon; public int dwAttributes; 阅读全文
posted @ 2011-06-04 23:25 Bruce-He 阅读(744) 评论(0) 推荐(0) 编辑
摘要:C#格式化数值结果表字符说明示例输出C货币string.Format("{0:C3}",2)$2.000D十进制string.Format("{0:D3}",2)002E科学计数法1.20E+0011.20E+001G常规string.Format("{0:G}",2)2N用分号隔开的数字string.Format("{0:N}",250000)250,000.00X十六进制string.Format("{0:X000}",12)Cstring.Format("{0:000.000}& 阅读全文
posted @ 2011-06-04 23:24 Bruce-He 阅读(177) 评论(0) 推荐(0) 编辑

成都共享办公室
点击右上角即可分享
微信分享提示