自定义博客皮肤VIP专享

*博客头图:

格式为PNG、JPG,宽度*高度大于1920*100像素,不超过2MB,主视觉建议放在右侧,请参照线上博客头图

请上传大于1920*100像素的图片!

博客底图:

图片格式为PNG、JPG,不超过1MB,可上下左右平铺至整个背景

栏目图:

图片格式为PNG、JPG,图片宽度*高度为300*38像素,不超过0.5MB

主标题颜色:

RGB颜色,例如:#AFAFAF

Hover:

RGB颜色,例如:#AFAFAF

副标题颜色:

RGB颜色,例如:#AFAFAF

自定义博客皮肤

-+
  • 博客(14)
  • 收藏
  • 关注

原创 C# 用StreamWriter和StreamReader读取txt文档

1.什么是流?        计算机中的流其实是一种信息的转换。它是一种有序流,因此相对于某一对象,通常我们把对象接收外界的信息输入(Input)称为输入流,相应地从对象向外输出(Output)信息为输出流,合称为输入/输出流(I/O Streams)。对象间进行信息或者数据的交换时总是先将对象或数据转换为某种形式的流,再通过流的传输,到达目的对象后再将流转换为对象数据。所以,可以把流看作是一

2016-09-14 15:51:13 5582

原创 C# 委托delegate与事件Event的用法和相关知识

什么是事件?事件有哪些?怎么用事件?一、什么是事件?事件(Event) 基本上说是一个用户操作,如按键、点击、鼠标移动、输入值改变等等,或者是一些出现,如系统生成的通知。应用程序需要在事件发生时响应事件。比较常用的有:窗体加载事件,鼠标事件,键盘事件,值改变事件,每个事件都有相应的操作响应。二、事件有哪些?在C#的命名空间System下,有个EventArgs类,它

2016-09-08 11:17:07 6474 2

原创 C# 线程池ThreadPool的用法简析

什么是线程池?为什么要用线程池?怎么用线程池?1. 什么是线程池?        .NET Framework的ThreadPool类提供一个线程池,该线程池可用于执行任务、发送工作项、处理异步 I/O、代表其他线程等待以及处理计时器。那么什么是线程池?线程池其实就是一个存放线程对象的“池子(pool)”,他提供了一些基本方法,如:设置pool中最小/最大线程数量、把要执行的方法排入队

2016-09-07 16:09:12 74519 11

原创 C# 多线程编程以及常用方法

一、1. 线程是什么,为什么使用线程不赘述        2. 使用线程要引入命名空间 System.Threading;        3. 线程函数通过委托(ThreadStart,ParameterizedThreadStart)传递,可以不带参数,也可以带object参数(只能有一个参数),可以用一个类或结构体封装参数。        4. 新开一个线程,线程函数通过委托传递,

2016-09-07 10:46:53 1126

原创 C# 关于线程锁lock的使用方法

在多线程编程中,可能会有许多线程并发的执行一段代码(代码块A),以提高执行效率。在某些情况下,我们希望A中的代码块(B)同步的执行,即同一时刻只有一个线程执行代码块B,这就需要用到锁(lock)。lock 关键字可以用来确保代码块完成运行,而不会被其他线程中断。它可以把一段代码定义为互斥段(critical section),互斥段在一个时刻内只允许一个线程进入执行,而其他线程必须等待。其写法

2016-09-02 10:07:05 41635 1

原创 C# 关于从数据库取数据,并显示在DataGridView中

从数据库取数据,并显示在DataGridView中,这种做法在.net开发经常用到。那么到底该怎么做呢?1.要从数据库取数据,必须建立数据库连接2.将数据库中取到的数据通过一定方法,显示在界面的的dataGridView中代码:   效果如下:从中,我们可以看到,显示出来的表格,完全是数据库中的样子,包括列明也是数据库中的列名,把数据库的表搬到前台页面而已。那么怎么

2016-08-30 15:49:56 45152 16

原创 C# 关于登录界面与主界面,关闭主界面程序不关闭的解决办法

许多朋友会发现,自己写的有登录界面的程序中,通过登录界面进入了操作界面,然而通过点击右上角关闭按钮关闭操作界面时,该项目的后台程序仍然存在。。。造成这个问题的原因是在写程序过程中,首先写的是登录界面,所以在Program.cs中,Main方法是这样的:所以,我们要做的就是,修改Application.Run()的参数,改为主操作界面,然后做一个判断,当登录界面的DialogResu

2016-08-30 09:09:46 8949 2

原创 C# 键盘KeyCode与keyValue

在C#中,经常用到键盘事件,用到键盘事件时,就需要知道键的KeyCode(键),或者是keyValue(键值)。如:Enter的键盘事件,KeyCode = Enter,keyValue = 13        private void Key_down(object sender, KeyEventArgs e)        {            if (e.KeyValu

2016-08-26 14:20:33 18776 1

原创 C# 泛型generic的简单理解

根据MSDN的一段话:泛型(generic)是C#语言2.0和通用语言运行时(CLR)的一个新特性。泛型为.NET框架引入了类型参数(type parameters)的概念。类型参数使得设计类和方法时,不必确定一个或多个具体参数,其的具体参数可延迟到客户代码中声明、实现。使用泛型的类型参数T,避免运行时类型转换或装箱操作的代价和风险。MSDN:《Microsoft Developer Ne

2016-08-15 10:23:40 983

原创 C# 委托delegate的相关知识

(未完待续)C#中的委托(delegate),类似于C/C++中的函数指针,它允许你传递一个类A的方法m给另一个类B的对象,使得类B的对象能够调用这个方法m,其传递的是一个方法。委托的好处就是可以动态的改变调的函数。实现一个delegate是很简单的,通过以下3个步骤即可实现一个delegate:1. 声明一个delegate对象,它应当与你想要传递的方法具有相同的参数

2016-08-10 17:25:57 505

原创 C#中显式转换隐式转换的问题

C#中存在类型转换,如int与double,string与object,string与时间等类型之间互相转换;类型转换又分为显式转换和隐式转换,隐式转换是指不需要指定转换类型的转换,显式转换则必须指定转换类型。例1.  int与double,(double表示范围大,且带小数,兼容int)                int  i = 5;         dou

2016-08-10 10:59:46 1152

原创 C# 方法和属性的访问权限修饰符解析

在C#中,方法和属性共有default、public、private、protected、internal、protected internal六种访问权限修饰符。1.  default-默认访问权限   方法和属性前面没有权限修饰符时,表示为默认访问权限,在C#中,默认即为private,该方法或属性只在类的内部可见。2.  private-私有访问权限   方法和属性前

2016-08-10 09:25:04 5047 2

转载 C#数组的声明方式

C#数组的五种声明方式一、声明一个未经初始化的数组引用,以后可以把这引用初使化为一个数组实例int[] intArray;intArray = new int[10];intArray [0] = 5;intArray [1] = 10;intArray [1] = 100;//修改intArray [1] 注:数组的引用必须以相同或相关类型实例化,数组初使化默

2016-08-02 10:30:55 422

转载 C#中数组、ArrayList和List三者的区别

在C#中数组,ArrayList,List都能够存储一组对象,那么这三者到底有什么样的区别呢。数组    数组在C#中最早出现的。在内存中是连续存储的,所以它的索引速度非常快,而且赋值与修改元素也很简单。[csharp] view plain copy "font-family:SimSun;font-size:18px;">//数组  string[] s

2016-08-02 10:20:12 283

空空如也

空空如也

TA创建的收藏夹 TA关注的收藏夹

TA关注的人

提示
确定要删除当前文章?
取消 删除