
C#编程技术
文章平均质量分 56
huangwenhua5000
这个作者很懒,什么都没留下…
展开
-
网络编程:自定义强大的C#网络操作基础类(NetHelper)
using System;using System.Text;using System.Net.Sockets;using System.Net.Mail;using System.Net;namespace DotNet.Utilities{ /// <summary> /// 网络操作相关的类 /// </summary> public clas原创 2015-04-02 22:58:17 · 1654 阅读 · 0 评论 -
c# winform 程序打包部署
c# winform 程序打包部署1 新建一个 c# 安装部署项目2 在文件系统编辑器里把做好的项目的可执行文件及要用到的其它文件(相关dll及资源文件)添加进来(应用程序文件夹)3 如果要在程序菜单中加快捷方式,可以在应用程序文件夹里把项目的可执行文件 生成一个快捷方式,再剪切到 用户的程序菜单 栏里同时可以把名称改成你要的名称4 如果要加进卸载功能 vs 2003 下 ,在应用转载 2013-05-15 11:24:46 · 551 阅读 · 0 评论 -
WinForm】DatagridView列宽设置与对齐方式
一、设置对齐方式1.列标题居中对齐dataGridView1.ColumnHeadersDefaultCellStyle.Alignment =DataGridViewContentAlignment.MiddleCenter;但实际上看上去仍然偏左,这是因为存在排序三角形,可以设置列的SortMode属性值为DataGridViewColumnSortMode.Not转载 2013-05-08 12:04:21 · 1546 阅读 · 0 评论 -
DataGridView单元格合并(画边框实现)
DataGridView单元格合并 关于VS2005 WinForm下DataGridView单元格合并,背景色设置 private void Form1_Load(object sender, EventArgs e) { DataTable dt = new DataTable(); dt.Col转载 2013-05-20 11:36:33 · 2315 阅读 · 0 评论 -
SQLHelp类封装
using System;using System.Data;using System.Data.SqlClient;using System.Configuration;public class SQLHelper{ #region 字段 /// /// 私有字段 /// private string connectionString;转载 2013-05-18 15:38:54 · 578 阅读 · 0 评论 -
datagridview 单元格为 编辑状态
设置datagridview 单元格获得焦点且处于编辑状态datagridview1 .CurrentCell =datagridview1 .Rows[i].Cells[列名];datagridview1 .BeginEdit(true);转载 2013-05-17 09:40:21 · 1150 阅读 · 0 评论 -
将窗口设置成另一个窗口的子窗口并切换,不闪屏
public partial class Main : Form { private int currentFormIndex = 1;//当前所在的tab页 //防止闪屏 protected override CreateParams CreateParams { get原创 2013-03-28 12:00:28 · 1169 阅读 · 0 评论 -
c#万能视频播放器
本人之前很多的文章中均提到了使用libvlc为播放器内核制作的播放器,也许有些朋友对此感兴趣,于是我用c#写了一个调用libvlc api实现的万能视频播放器,与大家分享一下。说它“万能”,当然是因为我们站在了vlc的肩膀上。 vlc是一个强大而且开源的多媒体播放器,也可以说是一个多媒体平台。它支持非常广泛的媒体格式的本地播放,完全可以媲美mplayer,其对视频网络流的处理能力更是非常强悍转载 2013-03-29 11:52:43 · 1269 阅读 · 0 评论 -
C# 键盘Enter键取代Tab键
说明:在填写表数据时当输入完一个文本框后,输入下一个文本框时需要用Tab键切换,但是有的人喜欢用Enter键切换下一个,此方法是Enter取代Tab键。效果:注释:键盘Enter键数字为:13 键盘Tab键数字为:9函数代码:private void SetEnt() { foreach (Control txt in (this转载 2013-03-15 09:21:18 · 962 阅读 · 0 评论 -
在winform中隐藏或者去除c#的标题栏并实现窗体移动附代码
设置窗体的FormBorderStyle为None不过要自己加上一些相应的操作代码了,不然窗口是不能进行拖动关闭之类的 #region 实现点击移动 internal static int WM_NCHITTEST = 0x84; internal static IntPtr HTCLIENT = (IntPtr)0x1; internal转载 2013-03-08 10:29:22 · 1440 阅读 · 0 评论 -
C#解决MDI窗体闪屏的方法
最近从师兄手上接了一个C#的项目,需要用到MDI窗体,可是每当我显示子窗体的时候会有一次“闪烁”,很明显,看起来非常不爽,查找许久,知道是每次在show()子窗体的时候都会调用子窗体构造函数重绘窗体,其中需要将子窗体的尺寸调整到我在程序中设置的大小,无论我这样设置,这个窗口大小变化总会在show()的时候显示出来,我试过网上说的设置双缓冲、先隐藏窗体等启动之后再显示、借助定时器设置窗体的opaci转载 2013-03-11 11:43:33 · 593 阅读 · 0 评论 -
c#读取ini文件操作类
using System;using System.Runtime.InteropServices;using System.Collections.Generic; namespace Common{/// /// ini文件操作类/// public class CIni{ #region 段信息的获取 //读取一个ini 文件中的所有段 [DllImport("ke转载 2013-03-08 11:41:56 · 820 阅读 · 0 评论 -
关于C#操作INI文件的总结
原文来自:http://www.cnblogs.com/gaohades/archive/2006/01/24/322751.htmlINI文件其实是一种具有特定结构的文本文件,它的构成分为三部分,结构如下:[Section1]key 1 = value2key 1 = value2……[Section2]key 1 = value1key 2 = value2转载 2013-03-08 10:45:41 · 598 阅读 · 0 评论 -
一步一步学Linq to sql系列文章
一步一步学Linq to sql(一):预备知识一步一步学Linq to sql(二):DataContext与实体 一步一步学Linq to sql(三):增删改一步一步学Linq to sql(四):查询句法一步一步学Linq to sql(五):存储过程一步一步学Linq to sql(六):探究转载 2013-01-18 16:29:16 · 392 阅读 · 0 评论 -
Lambda表达式学习
Lambda表达式学习 项目里面需要经常对一系列同类型集合进行操作 , 如对集合进行增加元素 , 删除集合的指定索引的元素等等. 我们可以使用ArrayList来进行.如 1 ArrayList stringArrayList=new ArrayList();2 stringArrayList. Add("大家好");3 stringArrayList.转载 2013-01-18 14:47:14 · 459 阅读 · 0 评论 -
一步一步学Linq to sql(一)
(一):预备知识 什么是Linq to sqlLinq to sql(或者叫DLINQ)是LINQ(.NET语言集成查询)的一部分,全称基于关系数据的 .NET 语言集成查询,用于以对象形式管理关系数据,并提供了丰富的查询功能,它和Linq to xml、Linq to objects、Linq to dataset、Linq to entities等组成了强大的LINQ。要学好LIN转载 2013-01-18 15:58:25 · 603 阅读 · 0 评论 -
C#将不合法的字符串转换成合法字符串并转换成数字
/// ///判断字符串能否转换成数字 /// /// /// public bool IsNumeric(string str) { if (str != null && System.Text.RegularExpressions.Regex.IsMatch(str,原创 2013-06-13 09:48:30 · 873 阅读 · 0 评论 -
C#简单的注册表操作类(兼容Win7)
using System;using Microsoft.Win32; /// /// Registry 的摘要说明。 /// public class Registry { public Registry() { // // TODO: 在此处添加构造函数逻辑转载 2013-06-13 11:46:36 · 1106 阅读 · 0 评论 -
C#注册表操作范例(控制台)
using System;using System.Collections.Generic;using System.Linq;using System.Text;using Microsoft.Win32;using System.Collections;using System.Security.Permissions;namespace regedit{ class转载 2013-06-13 12:05:52 · 687 阅读 · 0 评论 -
充分利用CPU高速缓存,提高程序效率(原理篇)
提高程序效率应该充分利用CPU的高速缓存。要想编写出对CPU缓存友好的程序就得先明白CPU高速缓存的运行机制。 i5-2400S: 1、有三级缓存分别为 32k(数据、指令缓存分开,分为32k),256K,6144K(四个CPU之间共享); 2、主频为2.5G,则一个时钟周期为1/2.5x10^9=0.4ns(主频=1/时钟周期)。 CPI:转载 2014-05-06 00:19:50 · 4720 阅读 · 0 评论 -
利用WebClient实现对Http协议的Post和Get对网站进行模拟登陆和浏览
我们在一些场合经常需要模拟浏览器进行一些操作,比如模拟投票,或者模拟点击,或者Web游戏外挂。而C#中封装好的WebClient可以在某些要求不算搞的场景实现Http的Post和Get。具体请见代码: using System; using System.Collections.Generic; using System.Linq; using System.Text; u转载 2013-12-12 14:54:03 · 774 阅读 · 0 评论 -
使用WebClient实现文件下载
.Net2.0中新增了很多组件,WebClient就是其中一个,功能也很强大,今天拿WebClient做了一个小实验,只用到了一些很简单的功能就可以实现以前不好实现的功能,很方便。 简单介绍一下WebClient: WebClient 类提供向 URI 标识的任何本地、Intranet 或 Internet 资源发送数据以及从这些资源接收数据的公共方法。 WebCli转载 2013-12-12 14:55:39 · 1107 阅读 · 0 评论 -
ExecuteScalar()方法的使用
ExecuteScalar()方法的作用是:执行查询,并返回查询所返回的结果集中第一行的第一列。所有其他的列和行将被忽略。1、返回的是一个object类型,也就是说是所有数据类型的基类,可根据select所得的第一列的数据类型转换为对应的数据类型例:string strConn = "Data Source=(local);Initial Catalog=paperManage;I转载 2013-08-26 21:35:37 · 5470 阅读 · 0 评论 -
(C#)一个解决方案下的多个项目之间互相调用
(C#)一个解决方案下的多个项目之间互相调用1.选择调用其他项目资源的项目->“引用”->右击“添加引用”->“项目”->选择要调用的项目2.在该项目下的资源中添加“using 被调用的资源名称;”3.实例化被调用的资源,为该项目使用转载 2013-08-10 22:56:01 · 9433 阅读 · 1 评论 -
十六进制字符串与数值类型之间转换
以下示例演示如何执行下列任务: 获取字符串中每个字符的十六进制值。 获取与十六进制字符串中的每个值对应的字符。 将十六进制 string 转换为整型。 将十六进制 string 转换为浮点型。 将字节数组转换为十六进制 string。 示例 此示例输出 string 中的每个字符的十六进制值。首先,它将 string 分析为字符数组,然后对每个字符调用 ToInt32(转载 2013-07-17 14:05:25 · 846 阅读 · 0 评论 -
C# winform 获取标题栏,状态栏,菜单栏的高度
MessageBox.Show("当前窗体标题栏高度"+(this.Height - this.ClientRectangle.Height).ToString());//获得当前窗体标题栏高度ClientRectangle//获取表示控件的工作区的矩形MessageBox.Show(SystemInformation.PrimaryMonitorSize.ToString()); //获取主转载 2013-07-02 10:16:03 · 2753 阅读 · 0 评论 -
C#延时函数 非Sleep
在很多时候,我们的程序,在执行下一步操作之前,需要等待上一步的执行完成,这种延时等待的方式在异步操作,或者是利用消息循环机制通信的程序中,最为体现的明显。举个API的例子:我们自己的程序是A,需要利用API结合Windows 消息机制,控制外部程序B;A向B发送一个消息,B去执行,此时A需要等待B执行完后,根据B的执行结果,再次向B发送下一个消息上面的例子,是个很典型的延时应用。转载 2013-07-16 10:40:20 · 2271 阅读 · 0 评论 -
C# Lucene的使用详解及中文分词算法
1 lucene简介1.1 什么是luceneLucene是一个全文搜索框架,而不是应用产品。因此它并不像www.baidu.com 或者google Desktop那么拿来就能用,它只是提供了一种工具让你能实现这些产品。1.2 lucene能做什么要回答这个问题,先要了解lucene的本质。实际上lucene的功能很单一,说到底,就是你给它若干个字符串,然后它为你提供一个全文转载 2013-07-16 13:05:12 · 6038 阅读 · 0 评论 -
C#解析Json
c#解析json文件的方法JSON(全称为JavaScriptObject Notation)是一种轻量级的数据交换格式。它是基于JavaScript语法标准的一个子集。 JSON采用完全独立于语言的文本格式,可以很容易在各种网络、平台和程序之间传输。JSON的语法很简单,易于人阅读和编写,同时也易于机器解析和生成。JSON与XML的比较◆可读性JSON和XML的可读性相比转载 2013-07-12 16:42:41 · 646 阅读 · 0 评论 -
C#实现WinForm窗口全屏显示
private void Login_Load(object sender, EventArgs e) { //隐藏窗口边框 this.FormBorderStyle = System.Windows.Forms.FormBorderStyle.None; //获取屏幕的宽度和高度转载 2013-06-26 11:52:31 · 8926 阅读 · 0 评论 -
C# GDI+双缓冲技术(防止移动时,窗口闪烁)
GDI+的双缓冲问题 我想有很多搞图形方面的朋友都会用到双缓冲技术的时候,而且有的时候她的确是个头疼的问题。最近我也要用双缓冲技术,程序怎么调试都不合适,当要对图形进行移动时,总是会出现闪烁抖动。在网上找了些资料,说得都不清不楚的,折腾了一晚上也没弄出来。第二天觉定自己研究一下。现在把自己的一些想法拿出来跟大家分享一下。双缓冲的基本原理:(转) 一直以来的误区:.net1.转载 2013-06-26 12:04:34 · 1524 阅读 · 0 评论 -
C#中如何获取存储过程的输出参数值
在程序中,有时数据访问层要调用存储过程,那么,在存储过程中如何调用及如何获取存储过程的输出参数值呢?下面是C#代码的实现1.运用Command对象SqlConnection con = new SqlConnection(constring);//constring是连接字符串con.Open();string sql = "myproc"; //存储过程名称myproc转载 2013-06-23 02:02:41 · 978 阅读 · 0 评论 -
VS2008 打开VS2010 项目
因为机器上只装有vs2008,但是要打开vs2010的项目。在网上查找方法如下: 1:.找到项目的.sln文件用记事本打开,在文件的头两行vs2010下是: Microsoft Visual Studio Solution File, Format Version 11.00# Visual Studio 2010 将其改为: Microsoft Visual Studio Sol转载 2013-06-17 09:56:21 · 552 阅读 · 0 评论 -
C#注册表操作类(完整版)
下面贴出自己用C#写的注册表操作类,欢迎大家拍砖! 1.注册表基项静态域 1 /// 2 /// 注册表基项静态域 3 /// 4 /// 主要包括: 5 /// 1.Registry.ClassesRoot 对应于HKEY_CLASSES_ROOT主键 6 /// 2.Registry.CurrentUser转载 2013-06-13 12:12:35 · 696 阅读 · 0 评论 -
vs2010 自动关闭 无法加载dll uiautomationcore.dll
有的时候装完vs2010后,发现打开项目后,编写代码或做其他操作时,vs会自动关闭,其中一个错误提示是: 无法加载dll uiautomationcore.dll :找不到指定的程序..异常来自:hresult:0x800700F。今天我遇到了这个问题,打过这个补丁WindowsServer2003-KB971513-x86-CHS.exe就可以了。因为我用的是server 2003的系统,如转载 2013-01-23 21:54:51 · 539 阅读 · 0 评论 -
Access,Update失败的BUG
我几乎没用过Access,一般都是用Sql Server。这两天做一小网站,服务器上面没有Sql Server,只好用Access。遇到一个莫名其妙的问题,搞了半天才弄好。这是一个毫无技术含量的问题,纯粹是Access的一种错误规定,甚至是一个Bug。做程序时,要知道这个Bug,否则很难找出错误原因。以下是我从遇到错误到改正错误的过程。我在做一个部门数据访问层的类,添加删除查询都没有问转载 2012-11-21 17:25:49 · 972 阅读 · 0 评论 -
C#中BackgroundWorker对象的使用
BackgroundWorker使用步骤如下:第一步:声明BackgroundWorker类变量 private BackgroundWorker backgroundWorker1 = new BackgroundWorker();第二部:在某一窗体的构造函数中设置其属性 backgroundWorker1.WorkerReportsProgress = true;//支原创 2012-08-24 15:56:49 · 882 阅读 · 1 评论 -
C#关于多线程及线程同步
Form1.csusing System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Text;using System.Windows.Forms;using System.Threading;//原创 2012-08-24 15:17:14 · 492 阅读 · 0 评论 -
选中DataGridView控件的某一行并将其位置滚动到当前选中行
1、如果有超过一屏的数据,想通过关键字查找到相关记录,然后再定位之,做法如下: 遍历所有行,把某单元格的值和关键字对比,找到后清除所有选择行,然后把当前行设为选择,然后把grid的CurrentCell设置为当前行的某个可见单元格即可,效果就会自动跳到定位好的行上。 示例代码: string InputStr=txtFindSp.Text; foreach(DataGrid转载 2012-08-24 12:25:01 · 7798 阅读 · 0 评论 -
C#对字符串加密
C#对字符串加密using System;using System.Collections.Generic;using System.ComponentModel;using System.Data;using System.Drawing;using System.Linq;using System.Text;using System.Windows.Forms;using翻译 2012-09-03 16:56:51 · 993 阅读 · 1 评论