摘要:
1.登录http://zxingnet.codeplex.com/,下载对应.net版本的zxing库 2.引入zxing.dll 3.新建界面控件 注意,二维码是有容量的,最多635个汉字;2685个字符。 阅读全文
摘要:
Decorator 和 Adorner 它们都有“装饰品”的意思。 Decorator类负责包装某个UI元素,以提供额外的行为。它有一个类型为UIElement的Child属性,其中含有待包装的内容。Decorator可被用于添加简单的视觉装饰,例如边界(Border),或者更复杂的行为,例如Vie 阅读全文
摘要:
对于WPF,一旦隐藏了标题栏,就无法移动,这时候需要重写移动方法,下面列举常见的三种方式方式。 方式一:重写OnMouseLeftButtonDown 这种方式bTop是鼠标按下的区域,可以是窗体的grid,border,也可以是自己重新定义的border。 方式二:新建一个鼠标按下事件 方式三:窗 阅读全文
摘要:
(1)如果派生类的函数与基类的函数同名,但是参数不同。此时,不论有无virtual关键字,基类的函数将被隐藏(注意别与重载混淆)。(2)如果派生类的函数与基类的函数同名,并且参数也相同,但是基类函数没有virtual关键字。此时,基类的函数被隐藏(注意别与覆盖混淆)。 阅读全文
摘要:
一、设计模式定义 设计模式(Design Pattern)是一套被反复使用、多数人知晓的、经过分类的、代码设计经验的总结。 使用设计模式的目的:为了代码可重用性、让代码更容易被他人理解、保证代码可靠性。 设计模式使代码编写真正工程化;设计模式是软件工程的基石脉络,如同大厦的结构一样。 二、设计模式的 阅读全文
摘要:
如果用foreach,会造成被遍历的集合更改后带来异常问题。 此时,用for循环可有效的解决这个问题。 for(int i=0;i<List.Count;i++) { if(条件是真) { List.Remove(List[i]); i--; } } 上面我们看到,当我们进行Remove操作后,元素 阅读全文
摘要:
如果数据绑定的目标是TextBox元素的Text属性,那么默认会使用双向绑定(Mode.TwoWay),此时用户可以通过更改TextBox元素Text属性的值从而更新源属性信息,但是如果在程序代码中更新源属性(此时源属性不是依赖属性)的信息,那么TextBox元素的Text属性不会同时进行更新,这时 阅读全文
摘要:
C#反射の反射详解(点击跳转)C#反射の反射接口(点击跳转)C#反射反射泛型接口(点击跳转)C#反射の一个泛型反射实现的网络请求框架(点击跳转) 一、什么是反射 反射(Reflection):这是.Net中获取运行时类型信息的方式,.Net的应用程序由几个部分:‘程序集(Assembly)’、‘模块 阅读全文
摘要:
术语解释: APM 异步编程模型, Asynchronous Programming Model EAP 基于事件的异步编程模式, Event-based Asynchronous Pattern TAP 基于任务的异步编程模式, Task-based Asynchronous Pattern 一、 阅读全文
摘要:
简介: 一个托管线程的创建需要数千个CPU周期,并且当发生线程切换时也会带来明显的开销。考虑线程的重用,避免不断重复创建新的线程是提高系统效率的一种方式。 线程池是一种提供效率的方式,它创建好一些线程由线程池引擎管理,开发者将需要处理的业务或操作封装成为【工作项】工作项被传递给线程池队列,由线程池中 阅读全文