随笔分类 - C#
摘要:在我们的生活中,无论是使用QQ,360安全卫士等软件的过程中,经常会遇到从右下方的托盘处弹出一个消息提示窗,比如新闻,产品更新等内容。那么它们是如何实现的呢? 下面来做个简单的Demo介绍一下。首先制作一个窗体,如下图: 主要代码事件: [代码]之后会弹出第二个窗体,也就是消息提示窗体:其实这也是一个窗体,是一个不规则的Windows窗体,那么在这个窗体中,我们需要处理那些事件呢?[代码...
阅读全文
摘要:在公共语言运行库和 C# 语言的早期版本中,通用化是通过在类型与通用基类型 Object 之间进行强制转换来实现的,泛型提供了针对这种限制的解决方案。通过创建泛型类,您可以创建一个在编译时类型安全的集合。使用非泛型集合类的限制可以通过编写一小段程序来演示,该程序利用 .NET Framework 基类库中的 ArrayList 集合类。ArrayList 是一个使用起来非常方便的集合类,无需进行修...
阅读全文
摘要:今天就邵志东老师所讲的Windows编程,记录点内容:• 泛型允许类、接口、结构、委托和方法通过它们所存储和操作的数据的类型来指定类型。• 这些类和方法将一个或多个类型的指定推迟到客户端代码声明并实例化该类或方法的时候。• 和使用object类相比,泛型降低了装箱和拆箱的负担,减少了类型转换所带来的错误• 使用泛型类型可以最大限度地重用代码、保护类型...
阅读全文
摘要:二、委托1. 委托– 委托使用的目标:把函数作为参数传递– 类似于C++中的函数指针– 是事件处理的基础– 委托是面向对象的、类型安全的和保险的。– 委托声明:• delegate double process(double db1);• delegate 函数返回类型名委托名(函数参数)匿名方法• 匿...
阅读全文
摘要:一、数组1. 数组概述• C# 数组从零开始建立索引,即数组索引从零开始。• 声明数组时,方括号([]) 必须跟在类型后面,而不是标识符后面。• 数组的大小不是其类型的一部分• 例如:• int[] numbers;• numbers = new int[10];• numbers = new int[20];...
阅读全文
摘要:在酷壳,有很多文章都提到了代码注释,如:《十条不错的编程观点》、《优质代码的十诫》、《整洁代码的4个提示》、《惹恼程序员的十件事》等等。今天,某国外的程序员在这里列举五种应该避免的程序注释,我觉得比较有道理,但我觉得有少数几个观点也并不绝对。所以,我把原文的这五种应该避免的程序注释罗列在下面,并放上原作者和我的个人观点作为比较。希望对大家有用。一、自恋型注释(注:原文为Proud,我觉得̶...
阅读全文
摘要:string tPath = ""; RegistryKey myKey = Registry.LocalMachine; RegistryKey subKey = myKey.OpenSubKey(@"SOFTWARE\DSCCheck"); tPath = subKey.GetValue("path").ToString(); tPath = tPath + @"\" + "Test.exe"...
阅读全文
摘要:1.1、Web Service基本概念 Web Service也叫XML Web Service WebService是一种可以接收从Internet或者Intranet上的其它系统中传递过来的请求,轻量级的独立的通讯技术。是:通过SOAP在Web上提供的软件服务,使用WSDL文件进行说明,并通过UDDI进行注册。XML:(Extensible Markup Language)扩展型可标记语言。面...
阅读全文
摘要:在我们开发各类应用型系统,经常会遇到导入导出Excel,为什么会用到他呢?企业或者单位在从无信息化到信息化的一个转变过程。 在没有信息化的企业或单位之前,一般都采用Excel来记录相应的数据,做统计计算的作用,那么当企业或单位实施信息化之后必然会将原有数据导入到系统中去存储与分析。那么作为程序员就必然面临一个将数据导入数据库的功能,下面针对此类情况作如下概述。在ASP.NET的B/S架构下,去导入...
阅读全文
摘要:Hello,大家好!今天把我之前写的从数据库中导出Excel与大家分享下,有不足之处还请指教!谢谢!效果描述:通过传入不同的数据集来控制Excel中sheet的数目,此例依照两个为例,仅供大家参考:#region 導出Excel private void outPutExcel(System.Data.DataTable dt, System.Data.DataTable dt2) { if (d...
阅读全文
摘要:当我们在使用WinForm开发项目或者小工具的时候,很多时候需要做开窗事件,这个时候你会如何处理呢?当然微软给我们提供了强大的日期控件,我们可以通过下拉选择来选择相应的日期,但是你会发现日期的格式不是我们所需要的,或者我们希望得到的日期格式,并且呈现出来的效果也不是非常美观。在此我给大家演示一下,我在开发小工具中如何设置日期开窗事件的,这是一个比较简单的日期开窗,下面开始喽!首先创建一个项目,里面...
阅读全文
摘要:分布类的定义:可以将类、结构或接口的定义拆分到两个或多个源文件中。每个源文件包含类定义的一部分,编译应用程序时将把所有部分组合起来。在以下几种情况下需要拆分类定义:处理大型项目时,使一个类分布于多个独立文件中可以让多位程序员同时对该类进行处理。使用自动生成的源时,无需重新创建源文件便可将代码添加到类中。Visual Studio 在创建 Windows 窗体、Web 服务包装代码等时都使用此方法。...
阅读全文
摘要:迭代器是 C# 2.0 中的新功能。迭代器是方法、get 访问器或运算符,它使您能够在类或结构中支持 foreach 迭代,而不必实现整个 IEnumerable 接口。您只需提供一个迭代器,即可遍历类中的数据结构。当编译器检测到迭代器时,它将自动生成 IEnumerable 或 IEnumerable<T> 接口的 Current、MoveNext 和 Dispose 方法。 迭代...
阅读全文
摘要:今天本来想详细介绍下WinForm窗体的,但是由于时间关系,我就只介绍继承窗体的基本知识喽,还请各位谅解!1、继承窗体的概念继承窗体就是根据现有窗体的结构创建一个与其一样的新窗体,这种从现有窗体继承的过程称为可视化继承。创建继承窗体有两种方式一种是编程方式,一种是使用继承选择器创建继承窗体。1)编程方式创建继承窗体·新建一个项目,添加一个Windows窗体Form1.cs&middo...
阅读全文
摘要:如果一个类不与具体的事物相联系,而只是表达一种抽象的概念,仅仅是作为其派生类的一个基类,这样的类就是抽象类,在抽象类中声明方法时,如果加上abstract时就是抽象方法1.抽象类概述及声明抽象类与非抽象类的主要区别:·抽象类不能直接被实例化·抽象类中可以包含抽象成员,但非抽象类中不可以·抽象类不能被密封举个小例子public abstract class ...
阅读全文
摘要:对了,玩了一段时间的部落格,现在一直发表的都是比较基础的C#的知识,等基础发表结束之后我会继续发表一些关于项目上的东东,由于本人仍在学习中,有错误和不足的地方,请大家批评指正。非常感谢各位!今天就来简单的介绍下接口的基本概念及用法:1、接口的概念及声明接口是一种用来定义程序的协议,它描述可属于任何类或结构的一组相关行为。接口可有方法、属性、事件和索引器或这四种成员的任何组合类型,但不能包含字段。那...
阅读全文
摘要:今天来简单介绍一下C#中最基础,最常用的一种数据结构:类。类是一种数据结构,它可以包含数据成员,函数成员和嵌套类型,类支持继承。面向对象概述了解类之前先来了解下面向对象的特点吧!·封装。类的属性和方法的集合,为了实现某项功能而定义类后,开发人员并不需要了解类体内每句代码的含义,只需通过对象来调用类内某个属性或方法即可实现某项功能,这就是类的封装性。·继承。通过继承可以创...
阅读全文
摘要:结构是一种值类型,通常用来封装一组相关的变量,结构中可以包含构造函数、常量、字段、方法、属性、运算符、事件和嵌套类型等,但是如果同时包含上述几个类型则应该考虑使用类。结构的特点:·结构式值类型·向方法传递结构时,结构是通过传值方式传递的,而不是作为引用传递的。·结构的实例化可以不适用new运算符·结构可以声明构造函数,但他们必须带参数&mid...
阅读全文
摘要:属性和方法是C#程序中两个重要的组成部分,其中,属性提供灵活的机制来读取,编写或计算私有字段的值,而方法则以一部分代码构成代码块的形式存在,用来实现一部分特定的功能。 那么,我们就先从属性开始讲起吧! 属性是一种用于访问对象或类的特性的成员。属性可以包括字符串的长度、字体的大小、窗体的标题和客户的名称。属性是成员的自然扩展,二者都是关联类型的命名成员。 叙述这些枯燥的概念确实让人乏味,下面我...
阅读全文
摘要:哈希表Hashtable是一个重要的集合类型,下面我来对他的基本用法做个小小的总结。1、Hashtable的概述Hashtable它表示键/值对的集合,这些键/值对根据键的哈希代码进行组织。它的每个元素都是一个存储在DictionaryEntry对象中的键/值对,键不能为空引用,但值可以。Hashtable常用的两种构造函数:public Hashtable() public Hashtable(...
阅读全文