10 2011 档案
摘要:今天为了实现一个很原始的问题上网查资料,见到一个很有意思的SQL语句,和大家分享一下要实现的SQL查询很原始:要求从第一个表进行查询得到第二个表格式的数据,上网查询之后竟然能写出下面的SQL:select * from userinoSELECT * FROM( SELECT DISTINCT userpart FROM userino)AOUTER APPLY( SELECT [usernames]= replace(replace(replace((SELECT username as value FROM userino N ...
阅读全文
摘要:在Winform开发中对事件的使用比较多,这里使用Winform中的自定义控件开发来对事件的实际用途举一个例子,这个例子实现的效果在不使用事件时还是比较难实现的,正好也突出了事件的实际应用价值需求分析:开发过条码枪设备的人应该知道,条码枪的窗体界面的一个最基本的需求就是在一行条码扫描完成后将焦点自动移动到下一个输入框中,由于输入的条码长度不一定相等,所以比较普遍的做法是捕获条码枪输入后自动加入的回车键(即 KeyValue==“Return”),这样说的话,能看出其实很类似与PC开发上的Tab,也就是Control基类对于Tab的处理。设计:从上面的分析很容易得出结论:只需要在自定义控件中捕获
阅读全文
摘要:在开发Wince的过程中使用到了有多个输入框,在这些输入框都输入值后将这些输入框的值传递到DataGrid中的需求,心想这种东西以后还会用,正好也学习一下Winform用户控件的用法,就把它写成了一个控件实现效果图和开发图(Wince的窗体界面比较难看...): 其中用红框框起来的是一个用户控件,目前实现的功能是根据传递的参数动态生成Label,Textbox,和GridView,也就是说使用的时候只需要给这个控件设置一个属性就行了开发这个用户控件还是有点内容的,拿出来分享一下1.在自定义控件的时候需要新增属性(ListHeaderStr),因为感觉这个属性能显示在可视开发界面的属性栏里,感.
阅读全文
摘要:实现主页和Dialog通信的方法有很多,这里为了提高通用性使用委托来实现,开发和测试是在Wince上使用精简版的Framework开发,在普通Winform开发上也应该能够使用为了实现主页和弹出也通信,只需要将主页中的对页面的控制方法委托传递给Dialog页面,在Dialog中根据用户的操作调用委托给主页面传值具体代码实现为主页面: private void button4_Click(object sender, EventArgs e) { Dialog dialog = new Dialog(new Action<int>((int re...
阅读全文
摘要:C#中参数的传递分为值传递和引用传递,在C中,对于引用的传递是没有限制的,方法(函数)也可进行传递,只需在接受的程序中将传递过来的数据用指针进行接收,然后通过该指针进行方法(函数)的调用即可。在C#中增加了对类型安全的限制,方法不能再作为普通的引用进行传递,因此C#中新增了委托,用于方法引用的传递。 委托实际上是一个封装过的类。最终派生自基类System.Delegate,C#对委托的使用进行了简化,使其的使用过程类似于基本类型。但是和基本类型的使用有着天壤之别,最突出的是委托类型作为一个独立的类的声明是不能放在在方法中的。delegate string PrintDele(string n.
阅读全文
摘要:预处理指令主要用于影响程序的编译过程,提供编译信息或禁止部分代码段的编译,C#其实并没有C++一样的独立预处理器,预处理指令也是由编译器处理的1.#define,#undef 用于声明或删除符号定义,#define和#undef必须放在文件的第一行,且定义的符号(变量)只在当前文件范围内有效2.#if,#elif,#else ,#endif 用于在根据定义的符号/变量 来判断标识的代码块是否需要被编译,如果不需要,则不会对其进行编译,生成的可执行文件也会相应缩小#define Debugusing System;using System.Collections.Generic;using Sy
阅读全文
摘要:1.Switch(1)C#中case值不能使用变量(可以使用常量)(2)激活了其中一个Case语句则其他Case不能被激活,除非使用goto case语句(3)如果Case语句处理为空 即:【case “asd” :case “eee”:】 则可以实现多条件并用处理(4)case顺序无关紧要,所以所有case的值不能相同(包括值相同的常量)(5)C#中case可以进行字符串的判断2.枚举类(enum)(0)枚举类定义方法public enum TimeOfDay{ Moring = 0, Afternoon = 1, Evening = 2,}public class tes...
阅读全文
摘要:将WCF寄宿在IIS上是WCF的一种寄宿方式,但是一直找不到在IIS上寄宿TCP的方法,由于先前使用的是IIS6,所以一直报net.tcp不能解析..上网查阅了很多资料发现似乎只有IIS7支持对TCP等其他通信方式的寄宿(WAS),下载了虚拟机装上Win7准备试一把(本来准备装Win2008可是公司只有DC版R2的镜像文件,装上之后怎么都激活不了.....)0.安装IIS,FrameWork,WAS这些都是Windows组件里添加的,就不多说了1.配置IIS支持对WCF的寄宿这里是第一个纠结点,如果配置不好,别说TCP,连HTTP都寄宿不上。一般情况下,如果机器上已经安装IIS,在安装.Net
阅读全文
摘要:托管堆内存管理策略与垃圾回收托管堆将对象依次保存,垃圾回收之后进行一次内存整理,所以如果GC的频繁发生会降低系统性能,因为GC对内存的清理造成对象在内存中的移动,在整个GC结束之前,CLR上的应用程序不可能继续运行,.net 使用世代垃圾回收器,CLR上的内存管理策略与OS的内存管理策略类似(CLR本身也就是虚拟机)。1.CLR内存管理CLR的托管堆的将对象依次保存在内存上,如果有新的内存请求,会在托管堆中遍历,找到第一个大小符合要求的连续内存空间,将对象保存在该空间。如图,假设CLR从内存为4001的存储块(不知道CLR是不是使用分页系统,所以只能用存储块来描述)开始寻址,此时需要分配一个大
阅读全文
浙公网安备 33010602011771号