
C#
文章平均质量分 77
luozhenyu
coding
展开
-
.Net中使用事件和委托实现Observer模式(一)
最近一个项目中使用C#开发windows应用程序,其中有多处地方需要实现这样的功能:某个属性或者数据变化后,须同步更新某个或多个界面上的显示效果。从设计模式的角度来看,这属于典型的Observer模式。Observer模式的基本前提应包含两个角色:观察者(observer)和主体(subject)(MVC中叫View和Model)。实际的应用中,观察者多是用户界面上的元素,负责向显示数据信息或原创 2009-04-27 16:40:00 · 768 阅读 · 0 评论 -
.Net中使用事件和委托实现Observer模式(二)
上一部分简要说明了Observer模式的原理和.Net中的事件处理机制,接下来看看具体应用的实现。 一个简单的应用场景:网络连接状态监控,用户界面根据网络连接状态变化,显示是否连接图标,并且同时显示已连接/未连接的文字提示。 具体步骤如下:1. 首先确定主体和观察者。创建两个类分别为:NetworkStatus 和 FormMonitor,其中前者为主体,后者为观察者,这里我们直接原创 2009-04-27 18:01:00 · 685 阅读 · 0 评论 -
C#中的Singleton实现
这个用得比较多。首先创建名为Monitor的Singleton类,代码如下:public class Monitor{ // 声明此类型的静态实例instance private static Monitor instance; // 外部公开访问的属性Instance public static Monitor Instance原创 2009-04-28 15:50:00 · 514 阅读 · 0 评论 -
VS.Net2005中使用本地化功能实现多语言的切换
在Windows应用程序中,实现多语言的需求基本上就是设计资源文件的过程,主要涉及到以下几种资源的处理:1)窗体及其控件资源,包括窗体标题、控件文本、控件布局等;2)各种图片资源中,涉及到有文本显示的图片;3)运行过程、用户交互过程中的提示信息等;下面以中英文两种语言设计为例,简单介绍下整个过程:一、首先确定默认的语言种类。VS.Net2005中,资源文件是以resx为扩展名的。其中:仅原创 2009-04-28 17:30:00 · 2588 阅读 · 0 评论 -
平台调用中的字符编码匹配
C#代码调用C++非托管代码时,使用P/Invoke方式,如果省略字符集属性,系统默认为 ANSI 字符集。比如: C++中我们采用Unicode的方式编码处理字符,C#调用其非托管代码时就一定要显式设定Charset属性为Unicode。[DllImport("user32.dll", CharSet=CharSet.Unicode)]public static extern int原创 2009-04-30 10:58:00 · 601 阅读 · 0 评论 -
为什么有些孩子有多动症?为什么有些孩子不快乐?
孙瑞雪:我们有一个根深蒂固的观念:孩子要锻炼、摔打,这样才能培养出坚强的、有出息的人。 我们有意对孩子严厉,有意给孩子艰苦的环境,有意让孩子吃苦,有意伤害孩子。当这些并不奏效时, 我们会变本加厉。这个似是而非的观念给多少孩子带来了苦难,带来了创伤?多少孩子心理出了问题, 甚至得了自闭症? 每个父母都是爱孩子的。当孩子出了问题,我们就开始追问,开始反省。一旦明白就痛心疾首地改 正,并加倍给原创 2015-03-16 09:56:35 · 957 阅读 · 0 评论