C#
小小的花园里面挖挖挖
种小小的种子开小小的花~
展开
-
从TXT读取内容
List ls = new List(); StreamReader sr = new StreamReader("1.txt"); string filetxt = ""; while (filetxt!=null) { filetxt = sr.ReadL原创 2015-09-26 14:43:18 · 413 阅读 · 0 评论 -
C#编写NotifyIcon 将窗口最小化到托盘
1.设置窗体属性showinTask=false2.加notifyicon控件notifyIcon1,为控件notifyIcon1的属性Icon添加一个icon图标。3.添加窗体最小化事件(首先需要添加事件引用):// this.SizeChanged += new System.EventHandler(this.Form1_SizeChanged);//上面一行转载 2015-09-25 20:15:23 · 483 阅读 · 0 评论 -
读取App.config文件中的内容
1. 读取connectionstringApp.config: <add name="ConnectionToNorthwind" connectionString="Data Source=localhost;Initial Catalog=Northwind;UserID=sa;password=sa" providerName="System.Da原创 2015-09-25 20:44:04 · 4513 阅读 · 0 评论 -
拖动文件到窗体上,并显示文件路径
private void Form1_DragEnter(object sender, DragEventArgs e){ if (e.Data.GetDataPresent(DataFormats.FileDrop)) e.Effect = DragDropEffects.Link; else e.Effect = DragDropEffects.None;}priva原创 2015-09-26 10:27:07 · 1443 阅读 · 0 评论 -
C#获取本机IPusing System.Net;
/// /// 获取本机IP /// /// /// 如果是多网卡的话,获得的是一个IP地址列表 /// /// protected string GetIP() { StringBuilder sb = new StringBuilde原创 2015-09-25 09:10:32 · 568 阅读 · 0 评论 -
C#将图片以二进制流形式存到数据库,并读取显示
private void button1_Click(object sender, EventArgs e) { OpenFileDialog ofd = new OpenFileDialog(); ofd.Filter = "图片文件|*.png;*.jpg"; if(DialogResult.OK== ofd原创 2015-09-25 19:47:15 · 9512 阅读 · 3 评论 -
C#WinFormListBox数据项的上下移动
private void button1_Click(object sender, EventArgs e) { int lbxLength = this.listBox1.Items.Count;//listbox的长度 int iselect = this.listBox1.SelectedIndex;//listbo原创 2015-09-25 20:45:04 · 1520 阅读 · 0 评论 -
checkedListBox获取选择的值
string print = ""; for (int i = 0; i < checkedListBox1.Items.Count; i++) { if(checkedListBox1.GetItemChecked(i)) { checkedL原创 2015-09-25 15:20:26 · 6086 阅读 · 0 评论 -
DataTable数据分页
/// ///当前页的索引 /// int pageindex = -1; /// ///每页的显示记录条数 /// int pagesize = 10; //总页数 int pagecount = -1; DataTable原创 2015-09-25 09:08:21 · 2443 阅读 · 0 评论 -
linkLabel事件
this.linkLabel1.Text = "百度 搜狐 新浪 博客园"; this.linkLabel1.Links.Add(0, 2, "http://www.baidu.com"); System.Diagnostics.Process.Start(e.Link.LinkData.ToString());原创 2015-09-25 10:53:07 · 561 阅读 · 0 评论 -
从数据库读取二进制流视频保存到本地并播放
string sql =string.Format("select * from pic where id = {0}",textBox2.Text); DataTable dt = DBUtil.getData(sql); byte[] bytes = (byte[])dt.Rows[0]["image"]; M原创 2015-09-26 10:33:14 · 5278 阅读 · 0 评论 -
使用分部类记录学生信息
partial class CommInfo { /// /// 编号 /// public object ID; /// /// 姓名 /// public object Name; /// /// 性别原创 2015-09-11 14:56:07 · 631 阅读 · 0 评论 -
泛型类的详细讲解
泛型是用于处理算法、数据结构的一种编程方式。泛型的目标是采用广泛适用和可交互性的形式来表示算法和数据结构,以使它们能够直接用于软件构造。泛型类、结构、接口、委托和方法可以提供它们存储和操作的数据类型来进行参数化。泛型能在编译时提供强大的类型检查,减少数据类型之间的显示转换、装箱操作和运行时的类型检查等。泛型类和泛型方法同时具备可重用性、类型安全和效率高等特性,这是非泛型类和非泛型方法无法具备的。原创 2015-09-11 14:59:17 · 1483 阅读 · 0 评论 -
通过继承泛型类实现输出学生信息
class BStuInfo { public T ID; //声明学生编号字段 public T Name; //声明姓名字段 public T Sex; //声明性别字段 public T Age; //声明年龄字段 public T Birthday; //原创 2015-09-11 17:18:30 · 1691 阅读 · 0 评论 -
使用泛型存储不同类型的数据列表
class Types { public T Num; //声明编号字段 public T Name; //声明姓名字段 public T Sex; //声明性别字段 public T Age; //声明年龄字段 public T Birthday; //声明生日原创 2015-09-11 15:39:57 · 1748 阅读 · 0 评论 -
泛类型的继承
泛类型的继承与普通类的继承是类似的,只是在继承时多了一个参数类型T,语法格式如下:class DerivedClass :BaseClass {}原创 2015-09-11 16:39:53 · 999 阅读 · 0 评论 -
C# WinForm程序退出的方法
1.this.Close(); 只是关闭当前窗口,若不是主窗体的话,是无法退出程序的,另外若有托管线程(非主线程),也无法干净地退出;2.Application.Exit(); 强制所有消息中止,退出所有的窗体,但是若有托管线程(非主线程),也无法干净地退出;3.Application.ExitThread(); 强制中止调用线程上的所有消息,同样面临其它线程无法正确退出的问转载 2015-09-12 22:27:18 · 849 阅读 · 0 评论 -
C# WinForm登陆窗体 密码输入框屏蔽右键、复制、粘贴
winform 程序写的登陆密码框设计: ----------this.textBox1.ResetText();相当于this.textBox1.Text="";this.textBox1.Focus();密码文本狂的输入限制主要也集中于以下两个问题:一、密码长度的输入限制这个和用户名的输入限制一样,直接更改txtPassword MaxLength的属转载 2015-09-12 22:47:44 · 3500 阅读 · 0 评论 -
C# 读取文件
private const string FILE_NAME = "test.txt"; static void Main(string[] args) { if (!File.Exists(FILE_NAME)) { Console.WriteLine("{0} does not ex原创 2015-11-04 10:03:08 · 315 阅读 · 0 评论 -
C# 索引器
using System;using System.Collections.Generic;using System.Linq;using System.Text;using System.Threading.Tasks;namespace Indexer{ class Program { static void Main(string[] args)原创 2015-11-04 11:39:44 · 330 阅读 · 0 评论 -
Lambda表达式详解
前言 1、天真热,程序员活着不易,星期天,也要顶着火辣辣的太阳,总结这些东西。 2、夸夸lambda吧:简化了匿名委托的使用,让你让代码更加简洁,优雅。据说它是微软自c#1.0后新增的最重要的功能之一。lambda简介 lambda运算符:所有的lambda表达式都是用新的lambda运算符 " => ",可以叫他,“转到”或者转载 2015-11-03 14:56:38 · 257 阅读 · 0 评论 -
在C#中创建和读取XML文件
项目中需要将前台页面中的信息保存下来并存储为xml文件格式到数据库中去。因此我先在这里通过一个小实例来学习xml的创建与读取。本文部分参考http://blog.csdn.net/lengjing126/archive/2009/08/12/4438042.aspx1.创建简单的XML文件为了便于测试,我们首先创建控制台应用程序,项目命名为CreateXml,Program.cs代转载 2015-10-19 15:50:59 · 496 阅读 · 0 评论 -
读取XML获取属性
protected void init() { string filename = "books.xml"; XmlDocument doc = new XmlDocument(); DataSet ds = new DataSet(); doc.Load(filename);原创 2015-10-19 09:53:49 · 1240 阅读 · 0 评论 -
C# 值类型和引用类型,堆和堆栈的区别
概念:1.值类型:数据存储在内存的堆栈中,从堆栈中可以快速地访问这些数据,因此,值类型表示实际的数据。2.引用类型:表示指向存储在内存堆中的数据的指针或引用(包括类、接口、数组和字符串)。C#中定义的值类型包括原类型(Sbyte、Byte、Short、Ushort、Int、Uint、Long、Ulong、Char、Float、Double、Bool、Decimal)、枚举(enum)、转载 2015-10-20 15:45:39 · 1206 阅读 · 0 评论 -
XPath语法 在C#中使用XPath示例
XPath可以快速定位到Xml中的节点或者属性。XPath语法很简单,但是强大够用,它也是使用xslt的基础知识。示例Xml:?1234567891011121314151617181920212223242526272829转载 2015-11-04 23:57:56 · 390 阅读 · 0 评论 -
数据库CSV导出
try { DataTable dt = DBUtil.GetData("select * from room"); int columns_count = dt.Columns.Count; SaveFileDialog savefile = new SaveFileDialo原创 2015-10-20 09:21:36 · 592 阅读 · 0 评论 -
XML创建数据表
原创 2015-10-20 21:26:23 · 1262 阅读 · 0 评论 -
dataGridView属性设置
dataGridView1.GridColor = Color.Blue;//设置网格颜色 dataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;//设置列宽自动调整 dataGridView1.AutoSizeRowsMode = DataGri原创 2015-09-17 14:53:37 · 880 阅读 · 0 评论 -
datagridview隔行变色
//只需要增加以下代码即可实现隔行变色dataGridView1.RowsDefaultCellStyle.BackColor = Color.Bisque;dataGridView1.AlternatingRowsDefaultCellStyle.BackColor = Color.Beige;原创 2015-09-18 11:01:50 · 657 阅读 · 0 评论 -
comboBox绑定数据源
//绑定数据源 comboBoxRoomType.DataSource = dt; comboBoxRoomType.DisplayMember = "name"; comboBoxRoomType.ValueMember = "ids";//获取选择了那个comboBoxRoomType.SelectedValue原创 2015-09-18 13:26:58 · 699 阅读 · 0 评论 -
初始化器
(1)源起 我们创建一个对象并给对象的属性赋值,代码一般写成下面的样子 var myObj = new MyObj(); myObj.id = Guid.NewGuid(); myObj.Title = "allen"; 自C#3.0引入了对象初始化器,转载 2015-10-08 08:15:13 · 383 阅读 · 0 评论 -
自动属性
(1)源起 为一个类型定义属性,我们一般都写如下的代码: public class MyObj2 { private Guid _id; private string _Title; public Guid id {转载 2015-10-08 08:14:50 · 476 阅读 · 0 评论 -
泛型委托
(1)源起 委托需要定义delgate类型 使用起来颇多不便 而且委托本就代表某一类方法 开发人员经常使用的委托基本可以归为三类, 哪三类呢? 请看下面: (2)使用 Predicate泛型委托 把上面例子中d1和d2赋值的两行代码改为如转载 2015-10-08 08:37:00 · 676 阅读 · 0 评论 -
listview绑定数据并显示ImageList图片
this.listView1.Columns.Add("房间ID"); this.listView1.Columns.Add("房间类型"); this.listView1.Columns.Add("房价"); this.listView1.Columns.Add("房间状态"); this.list原创 2015-10-08 20:13:42 · 4829 阅读 · 0 评论 -
隐式类型
(1)源起 在隐式类型出现之前, 我们在声明一个变量的时候, 总是要为一个变量指定他的类型 甚至在foreach一个集合的时候, 也要为遍历的集合的元素,指定变量的类型 隐式类型的出现, 程序员就不用再做这个工作了。 (2)使用方法 来看下转载 2015-10-08 08:13:50 · 596 阅读 · 0 评论 -
从数据读图片保存到imageList里面
string sql = "select * from pic where id = 1"; DataTable dt = DBUtil.dbutil.huoqu(sql); byte[] bytes = (byte[])dt.Rows[0]["image"]; MemoryStream ms = new MemoryStre原创 2015-10-08 20:02:08 · 1688 阅读 · 0 评论 -
匿名类型
(1)源起 创建一个对象,一定要先定义这个对象的类型吗? 不一定的! 来看看这段代码 (2)使用 var obj = new {Guid.Empty, myTitle = "匿名类型", myOtherParam = new int[] { 1, 2, 3, 4 } }; Console转载 2015-10-08 08:14:16 · 412 阅读 · 0 评论 -
泛型
(1)为什么要有泛型 假设你是一个方法的设计者, 这个方法有一个传入参数,有一个返回值。 但你并不知道这个参数和返回值是什么类型的, 如果没有泛型,你可能把参数和返回值的类型都设定为Object了 那时,你心里肯定在想:反正一切都是对象,一切的基类都是Object 没错!你是对的!转载 2015-10-08 08:16:19 · 339 阅读 · 0 评论 -
ListView全行选择
FullRowSelect=true;原创 2015-10-08 21:08:14 · 441 阅读 · 0 评论 -
数据库操作失败就【回滚】
public static bool executeSqlList(List sqlList) { bool flag = true; SqlConnection con = sqlcon; SqlTransaction tran = con.BeginTransaction();原创 2015-10-08 21:42:52 · 1738 阅读 · 0 评论