- 博客(36)
- 资源 (22)
- 收藏
- 关注
原创 C# ashx一般处理程序Header设置
//数据不缓存 context.Response.Cache.SetNoStore(); //输出编码格式,设置为UTF-8格式字符串 context.Response.ContentType = "text/plain"; context.Response.ContentEncoding = Enco
2017-01-06 19:55:15
3357
1
原创 如何通过反射调用类中的<泛型>方法
定义的接口:namespace IProgramShut{ public interface IShut { /// /// 操作名称 /// string OperatorName { get; } /// ///
2015-06-16 22:41:59
10747
原创 Winform的DataGridView控件在编辑单元格时事件触发顺序
在我的测试过程中,从编辑单元格到结束编辑整个过程仅仅涉及到一下几个事件:dgv_Test_CellBeginEditdgv_Test_CellValidatingdgv_Test_CellParsingdgv_Test_CellValueChangeddgv_Test_CellValidateddgv_Test_CellEndEdit其它可能触发的事件未做测试。
2015-02-12 12:59:22
17738
1
原创 Winform应用程序加入UAC(User Account Control)用户账户控制
右键项目——>添加——>新建项——>选择应用程序清单文件新增成功后,文件内容如下: <!-- UAC 清单选项 如果要更改 Windows 用户帐户控制级别,请用以下节点之一替换 requestedExecutionLevel 节点。
2014-08-14 11:38:12
5112
转载 WinForm-TextRenderer和Graphics的一些区别
TextRenderer TextRenderer是一个sealed类,无法继承。该类位于System.Windows.Forms命名空间中,提供了一组静态方法,可用于在 Windows 窗体控件上测量和绘制文本:DrawText与MeasureText。这两个方法都有几个重载方法:DrawText(IDeviceContext dc, string text, Font fon
2013-07-04 11:28:02
7695
原创 读取 为 指定 dll 添加的 配置文件App.config
读: /// /// 获取配置文件AppSeting节点数据信息 /// /// /// public static string GetAppSettingKeyValue(string key) { Configuration cfg = Configuratio
2013-04-28 13:16:50
3890
原创 2.0 不支持扩展方法,做个记录
public static bool KVPair_Equal(this KeyValuePair objOne, KeyValuePair objTwo) { if (objOne.Key.Equals(objTwo.Key) && objOne.Value.Equals(objTwo.Value)) {
2013-04-25 17:52:57
1000
原创 List去除重复项。
for (int i = 0; i < List.Count; i++) { for (int j = i + 1; j < List.Count; j++) { if (List[i]==List[j]) { List.Remo
2012-10-26 18:02:52
1992
原创 当Panel等容器类控件 失去焦点再获得焦点后,滚动条复位的解决方式。
今天干活的时候 碰到的问题,有两个Panel,一个 作为 容器:Panel_1,另一个做为画布:Panel_Draw,Panel_Draw的大小是可以调整的,不过他的父控件Panel_1的大小是随着窗口大小的变化而变化的,所以画布Panel_Draw的大小何有可能会超出 Panel_1的范围,因此我就吧Panel_1的AutoScroll属性设置为true,让它自动显示滚动条,但是 这
2012-10-16 18:12:45
6124
2
原创 【多线程学习】:互斥锁Mutex
开始的时候自己写了段代码,其中有句关于Mutex声明方式,分别采用了带名称的和不带名称的,代码如下://Mutex mutex = new Mutex(false, "MyMutex");//带名称 Mutex mutex = new Mutex(false); //不带名称 mutex.WaitOne();
2012-08-08 12:49:07
1841
转载 【C#基础语言学习】:const,readonly 常量与只读的区别
Const是常量Const在编译时会被编译为静态成员,它确定于编译时期,属类型级,通过类型来访问。现在通过以下几种情况来说明const常量:(1)初始化public const string _name;这种方式是错误的,因为它的值须在编译时期确定,所以在声明要初始化。(2)构造器中初始化public const string _name= "宋江";publi
2012-08-05 16:57:09
1164
转载 获取字符串的像素长度
1、 使用g.MeasureString()获得使用MeasureString测量出来的字符宽度,总是比实际宽度大一些,而且随着字符的长度增大,貌似实际宽度和测量宽度的差距也越来越大了。查了一下MSDN,找到了下面这个理由:MeasureString 方法旨在与个别字符串一起使用,它在字符串前后包括少量额外的空格供突出的标志符号使用。 string str;
2012-07-31 14:15:10
6044
转载 【整理pcnetman888帖子】奇怪的局部变量:讨论一下C#中的闭包【关于闭包再续】
在【pcnetman888】于优快云-优快云社区-.NET技术-C# 版 时间: 2009-08-21 13:40:51发的一个帖子中涉及到关于闭包的知识点,我这几天(三年后)才看到,觉的帖子中有许多回复很有价值,并且在他本人的博客中没有看到关于帖子内容以及回复的整理结果,于是我就在没有经过他的同意的情况下私自整理如下(希望pcnetman888本人不要见怪)。 帖子原址:奇怪的局
2012-07-30 20:02:16
1232
转载 转载关于KeyPress和KeyDown事件的区别和联系
KeyDown:在控件有焦点的情况下按下键时发生。KeyPress:在控件有焦点的情况下按下键时发生。KeyUp:在控件有焦点的情况下释放键时发生。 1、KeyPress主要用来接收字母、数字等ANSI字符 KeyDown 和 KeyUP 事件过程通常可以捕获键盘除了PrScrn(在键盘右上角)所有按键(这里不讨论特殊键盘的特殊键)2、KeyPress 只能捕获单个字符
2012-07-30 18:27:53
9974
原创 Winform中Control.KeyDown 事件(整理自MSDN)
事件说明:在控件有焦点的情况下按下键时发生(这里也没说是任意键,因为有些键在KeyDown中也是处理不了的)。原型:public event KeyEventHandler KeyDown 相关键事件按下列顺序发生:KeyDownKeyPressKeyUp注意:若要仅在窗体级别处理键盘事件而不允许其他控件接收键盘事件,请将窗体的 KeyP
2012-07-30 18:18:46
3590
原创 Winform中的Control.KeyPress事件(整理转自MSDN)
KeyPress事件会在控件有交点的情况下按下键时触发(注意不是任意键哦,因为某些键KeyPress是不能捕获的,具体请往下看)。原型:public event KeyPressEventHandler KeyPressMSDN说明:键事件按以下顺序发生:KeyDownKeyPressKeyUpKeyPress 事件不能由非字符键引发;但是非字符
2012-07-30 16:31:51
5311
转载 整理贴,NET中的闭包《续》:闭包造成的意外。
闭包是将一些执行封装,将它像对象一样传递,在传递时,执行依然能够访问到原上下文。访问原来上下文,是闭包的重要特征 代码:static void Main(string[] args){List ls = new List();for (int i = 0; i < 10; i++){ls.Add(() => Console.WriteLine(i));
2012-07-29 19:56:08
931
转载 整理贴,NET中的闭包。
闭包是将一些执行语句的封装,可以将封装的结果像对象一样传递,在传递时,这个封装依然能够访问到原上下文。 形成闭包有一些值得总结的非必要条件:1、嵌套定义的函数。2、匿名函数。3、将函数作为参数或者返回值。4、在.NET中,可以通过匿名委托形成闭包:函数可以作为参数传递,也可以作为返回值返回,或者作为函数变量。而在.NET中,这都可以通过委托来实现。这些是实现闭包的
2012-07-29 19:14:34
1382
转载 C#实现托盘图标
与C++相比c#提供的NotifyIcon控件实现托盘图标容易了许多。托盘程序的制作:1.拖拽NotifyIcon控件到窗体上,并设置NotifyIcon的Icon(很重要!否则运行后看不到效果)2.控制窗体最小化到托盘。private void MinToIcon() { this.Hide(); this.ShowInTaskbar = false;
2012-07-28 09:40:38
3723
原创 对于集合中的扩展方法Select和Where的练习
代码:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Lamda_Test{ class Program { static void Main(string[] args) {
2012-07-27 15:59:21
15764
原创 C#中我接触到的几中初始化器.
直接上代码:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Csharp3._0初始化器{ class Program { public class People { publ
2012-07-25 16:58:45
1177
原创 使用:Comparison委托,为list等集合做自定义排序。
using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Comparison委托进行排序{ class Program { static void Main(string[] args) {
2012-07-24 18:51:36
3723
原创 【基础语言学习】C#中的可空类型运算(Nullable<T>)------T?
几天在看公司的代码的时候,发现对于一些字符串的运算没有判断是否为null,就直接参与了运算,于是就引起了我的兴趣,自己写了个代码作为测试,代码如下:using System;using System.Collections.Generic;using System.Linq;using System.Text;namespace Null值相加{ class Program
2012-07-24 13:18:44
4685
原创 Button的BringToFront()方法,使按钮置顶.
今天看到QQ上有一个当鼠标划过按钮时使选中的按钮放大并置顶,自己写个代码试验下,代码如下: public partial class FormMain : Form { public FormMain() { InitializeComponent(); } int x = 0;//保存鼠标进入
2012-07-23 17:35:18
11013
原创 Predicate查找字典中的数据
static void Main(string[] args) { List TempList = new List(); TempList.Add("TempOne"); TempList.Add("TempTwo"); TempList.Add("TempThree");
2012-07-22 01:00:16
938
转载 Datatime对象的相加、相减 、比较操作
在.NET中DateTime对象可以直接进行相加、减、比较操作,其中加减的操作结果返回的是一个TimeSpan对象,也就是用TimeSpan对象表示DateTime的时间间隔: System.DateTime date1 = DateTime.Now; System.DateTime date2 = DateTime.Now.Date.AddDay(-7);
2012-04-05 15:28:35
3419
转载 如何设置TableLayoutPanel属性,使之在在重绘时闪烁减弱。
今天用到winform中的TableLayoutPanel控件,对窗口布局,开始的时候发现在最大化或者手动调整窗口大小时TableLayoutPanel控件总是不停的闪烁,我从网上查到说是要设置控件的DoubleBuffered 属性为true,但是怎么都没从属性栏中找到这个属性。于是用从网上找了一下方法: 在代码中设置flowLayoutPanel1.GetType().GetPro
2012-04-05 13:19:20
3914
转载 TreeView返回选中节点的下属节点值得方法
TreeView的SelectedNodeIndex返回的根节点值是0,1,2这样的,但子节点是0.1,0.0.1,这样的,这样怎么能采用TreeView.Nodes[SelectedNodeIndex].Text返回呢?子节点TreeVIew.Nodes[i].Nodes[i]......,一试果然,下面是用循环的方法返回节点值的程序private void TreeView1_Selected
2012-03-31 18:24:22
1728
转载 C#遍历访问Dictionary和HashTable
一般地Dictionary是按照元素的添加顺序输出的,这和HashTable不同。 Dictionary dictionary = new Dictionary();dictionary.Add(1, "xiaowang");dictionary.Add(21, "dsd");dictionary.Add(33, "dsfdfd");dictionary.Add(4, "liusang
2012-03-31 12:51:26
13447
转载 C#的Enum——枚举
枚举 枚举类型声明为一组相关的符号常数定义了一个类型名称。枚举用于“多项选择”场合,就是程序运行时从编译时已经设定的固定数目的“选择”中做出决定。 枚举类型(也称为枚举)为定义一组可以赋给变量的命名整数常量提供了一种有效的方法。例如,假设您必须定义一个变量,该变量的值表示一周中的一天。该变量只能存储七个有意义的值。若要定义这些值,可以使用枚举类型。枚举类型是使用 enum 关键字声明的
2012-03-19 18:23:05
831
转载 Attribute在.NET编程的应用(六)
(承上节) .NET Framework拦截机制的设计中,在客户端和对象之间,存在着多种消息接收器,这些消息接收器组成一个链表,客户端的调用对象的过程以及调用返回实行拦截,你可以定制自己的消息接收器,把它们插入了到链表中,来完成你对一个调用的前处理和后处理。那么调用拦截是如何构架或者说如何实现的呢?在.NET中有两种调用,一种是跨应用域(App Domain),一种是跨上下文环境(Contex
2012-01-14 17:07:30
517
转载 Attribute在.NET编程中的应用(五)
Attribute在拦截机制上的应用从这一节开始我们讨论Attribute的高级应用,为此我准备了一个实际的例子:我们有一个订单处理系统,当一份订单提交的时候,系统检查库存,如果库存存量满足订单的数量,系统记录订单处理记录,然后更新库存,如果库存存量低于订单的数量,系统做相应的记录,同时向库存管理员发送邮件。为了方便演示,我们对例子进行了简化://Inventory.csusing Sy
2012-01-14 17:03:41
463
转载 Attribute在.NET编程中的应用(四)
SqlCommandGenerator类的设计 SqlCommandGEnerator类的设计思路就是通过反射得到方法的参数,使用被SqlCommandParameterAttribute标记的参数来装配一个Command实例。引用的命名空间://SqlCommandGenerator.csusing System;using System.Reflection;using S
2012-01-14 16:57:45
478
转载 Attribute在.NET编程中的应用(三)
用于参数的Attribute在编写多层应用程序的时候,你是否为每次要写大量类似的数据访问代码而感到枯燥无味?比如我们需要编写调用存储过程的代码,或者编写T_SQL代码,这些代码往往需要传递各种参数,有的参数个数比较多,一不小心还容易写错。有没有一种一劳永逸的方法?当然,你可以使用MS的Data Access Application Block,也可以使用自己编写的Block。这里向你提供一种另
2012-01-14 16:50:19
402
转载 Attribute在.net编程中的应用(二)
.NET Framework中对Attribute的支持是一个全新的功能,这种支持来自它的Attribute类。在你的程序中适当地使用这个类,或者是灵活巧妙地利用这个类,将使你的程序获得某种在以往编程中很难做到的能力。我们来看一个例子:假如你是一个项目开发小组中的成员,你想要跟踪项目代码检查的信息,通常你可以把代码的检查信息保存在数据库中以便查询;或者把信息写到代码的注释里面,这样可以阅读代码
2012-01-14 16:38:46
479
转载 再别的地方看到的程序中启动外部程序的方法(觉得挺全的,分享下)
C#调用外部程序引用:System.Diagnostics.Process// using System.Diagnostics;private string appName = "calc.exe";/// /// 1. 启动外部程序,不等待其退出/// private void button1_Click(object sender, EventArgs e)
2011-11-07 11:11:43
811
c#通过Gma.QrCodeNet和ThoughtWorks.QRCode生成二维码
2016-04-20
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人