- 博客(97)
- 资源 (33)
- 收藏
- 关注
转载 通俗易懂-面向对象设计思想(C#)
有了翅膀才能飞,欠缺灵活的代码就象冻坏了翅膀的鸟儿。不能飞翔,就少了几许灵动的气韵。我们需要给代码带去温暖的阳光, 让僵冷的翅膀重新飞起来。结合实例,通过应用OOP、设计模式和重构,你会看到代码是怎样一步一步复活的。 为了更好的理解设计思想,实例尽可能简单化。但随着需求的增加,程序将越来越复杂。此时就有修改设计的必要, 重构和设计模式就可以派上用场了。最后当设计渐趋完美后,你会发现,即使需求不
2008-12-04 15:33:00 503
转载 多线程共享资源参考
在现代的程序开发中,资源的同步是一个比较重要的课题,在.Net中,对这部分有很丰富类库供我们使用,现在总结一下在各种情况下对资源同步的机制。 1.将字段声明为volatile 当一个字段被声明为volatile时,CLR中一些管理代码和内存的内部机制将负责对字段进行同步,并且总能保证读取到的字段信息都为最新的值,被声明为volatile的字段必须具备以下特征之一
2008-12-02 11:33:00 1180
原创 C#序列化和反序列化
实现目的:序列化和反序列化一个dataTable加入一个名为Book的类using System;using System.Collections.Generic;using System.Text;using System.Collections;using System.Data;namespace Rop{ [Seriali
2008-11-13 14:55:00 526
转载 用 .NET Memory Profiler 跟踪.net 应用内存使用情况--基本应用篇
.net 框架号称永远不会发生内存泄漏,原因是其引入了内存回收的机制。但实际应用中,往往我们分配了对象但没有释放指向该对象的引用,导致对象永远无法释放。最常见的情况就是给对象添加了事件处理函数,但当不再使用该对象时却没有将该函数从对象的事件handler中减掉。另外如果分配了非托管内存,而没有手工释放,GC同样无能为力。所以当.net应用发生内存泄漏后如何跟踪应用的内存使用情况,定位到
2008-10-30 16:31:00 832
转载 C#调用C#编写的脚本
引用 命名空间using Microsoft.CSharp; using System.CodeDom.Compiler;using System.Reflection; 加入代码private void button1_Click(object sender, EventArgs e) { ICodeCompiler vCodeCompiler
2008-09-28 11:42:00 1110
原创 .NET(VB,C#)导出DATAGRIDVIEW到EXCEL中
引用EXCEL库就不说了,直接贴上代码c#: #region 导出DataGridView中数据为EXCEL文件 public Boolean OutExcel(DataGridView grView, string sPath, string exName) { //函数说明:导出DataGri
2008-09-24 17:19:00 1470
原创 C#注册系统热键
引用using System.Runtime.InteropServices;命名空间 [DllImport("user32")] public static extern bool RegisterHotKey(IntPtr hWnd,int id,uint control,Keys vk ); //注册热键的api
2008-09-08 16:27:00 636
转载 SQL超快的分页存储过程
--//我把它封装成一个存储过程,调用的时候方便的很哈!!create procedure up_zbh_DivPageBySql @strSql varchar(8000), @nPageSize int, @nPageCount intas SET NOCOUNT ON DECLARE @P1 INT, @nRowCount INT --//注意:@scroll
2008-08-22 11:35:00 423
原创 如果打架,一定要战胜对手!
Once upon a time, (从前),一个孩子在街头和小朋友打架打败了,他哭着回家告诉爸爸。爸爸听了之后不仅没有安慰他,也没有对孩子的安全事务进行任何干预,倒是反而狠狠揍了儿子一顿,爸爸揍他的理由,说出来令人惊讶:我们家容不得失败者,下次打架一定要把对方打败,如果哭着回来,你就不是我的儿子! 在这样的家教下,这个出身贫寒的孩子长大了。他后来成为美国总统,名字叫里根。 Once
2008-07-26 13:41:00 1128
原创 DataGridView 列宽和行高自动调整的设定
) 设定行高和列宽自动调整[C#]// 设定包括Header和所有单元格的列宽自动调整DataGridView1.AutoSizeColumnsMode = DataGridViewAutoSizeColumnsMode.AllCells;// 设定包括Header和所有单元格的行高自动调整DataGridView1.AutoSizeRowsMode = DataGridViewAutoSiz
2008-07-26 13:17:00 2334
转载 MDI窗体的工具栏合并(ToolStrip Merging)的功能实现
这个模型的大概构成是这样的:1个MDI主窗体,1~n个MDI子窗体;主窗体上一般会有1个主菜单栏,1~n个主工具栏;子窗体设计时上可能有0~1个主菜单栏,0~1个主工具栏,运行时子窗体的菜单栏和工具栏都显示在主窗体上,与主窗体的菜单栏和工具栏合并。(实际上也许会有多个工具栏,但先简化为一个工具栏的模型,实现了一个工具栏的合并后,要实现多个工具栏合并也并非难事)。对于菜单栏的合并,无论是传统的Win
2008-07-18 15:04:00 1740 2
原创 写Form设计器尝试(五) 让设计器使用自定义控件
在“写Form设计器尝试(三) 在窗体上添加控件”的评论中,热心关注者Leejee提出了自定义控件的问题。我于是作了一个小测试,来实现设计器中使用自定义控件。 先要准备一个自定义控件。新建一个Windows控件方案,命名为MyControl, 添加一个名为ComboBoxField的用户控件,在该用户控件上放一个Label和一个ComboBox, 生成解决方案。将生成的dll文件复制到测试目录
2008-07-18 15:03:00 898
转载 写Form设计器尝试(六) 实现菜单命令
在写这篇的正文之前,我要衷心感谢微软公司的Jeffrey Tan先生,他居然看懂了我的文理不通的英文提问,并且花费宝贵时间来钻研,帮我解决了一个星期来我百思不得其解的问题。我当时的问题是我写了一些语句来实现标准菜单命令,但是调试的时候怎么也得不到正确的结果,事实上我研究的两个例子用的方法和我的类似,它们却都可以正常执行。我一直没有找到原因,不得不求助支持。 在“写Form设计器尝试(四) 修
2008-07-18 15:03:00 1147 3
转载 写Form设计器尝试(四) 修改窗体上的控件属性
在上一次的尝试中,我们已经可以进行控件的添加了。但后来我发现了一个bug, 就是画好一个控件后,居然还可以接着画出这个控件,这不符合我们的习惯。一般情况下我们希望画好控件后,鼠标变回选择状态。这个功能在.net 2.0以前的做法是实现IToolboxService的void SelectedToolboxItemUsed()方法,但是在.net 2.0中我们已经可以用更简单的办法,前面讨论过,在.
2008-07-18 15:02:00 1137
转载 写Form设计器尝试(三) 在窗体上添加控件
在.net 2.0以前的版本中想实现在窗体设计器中添加控件的做法是定义一个实现IToolboxService接口的“服务”,然后添加到ServiceContainer中,具体方式可以参照http://www.divil.co.uk/net/articles/designers/hosting.asp 。这个地址在www.windowsforms.net 的Code hero中也可以找到。 .n
2008-07-18 15:01:00 1615
转载 写Form设计器尝试(二) PropertyGrid
如果要修改这个设计时Form的其它属性该怎么办呢?接下来的更简单了。切换到Form1的设计界面,往上面放一个SplitContainer, 再在这个SplitContainer的右panel上放一个PropertyGrid, 并将其Dock属性值设置成Fill。切换到代码编辑界面,将上篇中输入的代码的最后一行改成:Code highlighting produced by Actipro Co
2008-07-18 15:00:00 1122
转载 写Form设计器尝试(一)
Eddie Sheffield作为微软之外的第一个发现启用Form Designer的人,确实是了不起。 几年过后的今天,已经可以找到一些关于Form Designer的资料,虽然不多也不全面,但毕竟还是有一些。我手上的资料是: 1、《Dissecting a C# Application Inside SharpDevelop》中文版,第16章专门讲Form设计器; 2、win
2008-07-18 14:57:00 1494 1
ASP.NET下MVC最简单数据库增删改查示例
2019-07-11
Android获取GPS定位(获取经纬度)
2017-11-21
WebSocket示例
2015-06-09
串口通讯+modbus通讯协议示例
2015-01-23
C#_tcp异步通信类
2009-06-20
ASP.net资源实现网站多语言
2009-01-14
ASP.NET实现网站多语言
2009-01-14
c#-TCP多客户端程序
2008-08-27
窗体设计器
2008-07-18
空空如也
TA创建的收藏夹 TA关注的收藏夹
TA关注的人