记录关于C#基础知识的学习
摘要: 在winForm应用程序中,窗口间数据的传递是最多的应用之一,尤其是在管理软件当中。 窗口的数据传递,有多种方式,在这篇随笔中主要是阐述一下利用委托如何来传递数据。 在本实例程序中,有两个窗体:一个主窗体FrmMain,接收数据;一个子窗体FrmChild,传出数据,UI如下: 在主窗体中,[设置]按钮,弹出子窗体,在文本框中输入相应的值后,点击[确认]返回到主窗体,同时返回数据至主窗体。 具体代...阅读全文
摘要: 在 使用BackgroundWorker组件 一文中,阐述了在Winform编程中,使用BackgroundWorker组件实现异步调用,本文主要讲述利用委托实现异步。 以下描述摘抄于MSDN: 异步委托提供以异步方式调用同步方法的能力。 当同步调用委托时,Invoke()方法直接对当前线程调用目标方法; 当异步调用委托时,CLR将对请求进行排队并立即返回到调用方,将对来自线程池的线程调用该目标方...阅读全文
摘要: 委托是一种数据结构,它引用静态方法或者引用类实例及该类的实例方法(MSDN); 委托类型的声明,建立了一个协定,该协定指向一个或者多个方法的签名; 委托是面向对象并且是类型安全的。 一、Delegate的简单例子: 委托的声明需要使用关键字:delegate; 委托的命名是任意的,但是委托必须与它指向的方法签名相匹配:返回类型;参数个数与类型 namespace ConsoleApplicatio...阅读全文
摘要: 这几天来,结合着Reflector工具,在学习泛型集合方面的基础知识,也连续写了几篇笔记文章,今天继续Queue的学习,主要是利用 Reflector查看其内部的实现,以加深对基础知识的理解: 1、Queue<T>队列,表示对象的先进先出集合(MSDN) 2、主要私有成员变量: private T[] _array;//队列的存储与操作基于此数组实现 private...阅读全文
摘要: 1、命名空间:System.Collections.Generic(程序集:mscorlib)2、描述:1)、同一任意类型的实例的大小可变的后进 先出 (LIFO) 集合。2)、Stack作为数组来实现。3)、Stack容量是指可以保存的元素数;向Stack添加元素时,重新分配内部数组,根据需要自动增大容量。 4)、可以接收null空引用(VB中的Nothing)3、创建及初始化:1)、Stack&l...阅读全文
摘要: 1、命名空间: System.Collections.Generic(程序集:mscorlib)2、描述: 1)、表示可通过索引访问的对象的强类型列表;提 供用于对列表进行搜索、排序和操作的方法。 2)、是ArrayList类的泛型等效类。 3)、可以使用一个整数索引访问此集合中的元素;索引从 零 开始。 4)、可以接收null空引用(VB中的Nothing)。 5)、允许重复元素3、...阅读全文
摘要: 1、命名空间: System.Collections.Generic(程序集:mscorlib)2、描述: 1)、从一组键(Key)到一组值 (Value)的映射,每一个添加项都是由一个值及其相关连的键组成 2)、任何键都必须是唯一的 3)、键不能为空引用null(VB中的 Nothing),若值为引用类型,则可以为空值 4)、Key和Value可以是任何类型(string,int,cust...阅读全文