上一页 1 ··· 74 75 76 77 78 79 80 81 82 ··· 90 下一页
摘要: 第一种写法:(1):定义样式2:引用样式第二种写法: 说明如下:Source的属性值应该为“ImageSource 或 ImageSource的派生子类的实例”即Value = 应该为“ImageSource 或 ImageSource的派生子类的实例”Value="{StaticResource ResourceKey=RedLamp_Active}":把由“RedLamp_Active”关键字所代表的“BitmapImage”实例赋值给ValueSetter:设置器Property:用来指定“某一个”属性Value:用来设置“某个”属性的值{StaticResource 阅读全文
posted @ 2013-12-23 17:33 长白山 阅读(2021) 评论(0) 推荐(0)
摘要: 下面这种形式是比较常见的“一种”,当然还有其它的形式: public event Action NewAlarmDataArrivingEvent; //声明事件 //定义一个方法,在该方法中封装了引发事件的代码,该方法的参数通常为事件的处理方法的参数。在需要引发事件的地方,调用该方法即可 private void RaiseArrivingEvent(AlarmData newAlarm) { if (newAlarm != null && !bisInitializing && NewAlarmDataArrivingEvent != null) //引发事 阅读全文
posted @ 2013-12-23 11:14 长白山 阅读(238) 评论(0) 推荐(0)
摘要: private IEnumerable BatchCreateChartItems(double[] computedResult) { for (int i = 0; i :表示该方法返回一个枚举器2、yield return:表示以迭代的方式向“该方法”的调用端返回值(使用这种语法的前提条件是:“该方法”的返回值类型必须为“枚举器”,并且“该枚举器”支持在集合上进行简单迭代。3、new ChartDataItem(){。。。。。。},对象初始化器简要说明:IEnumerable的“原型”就是IEnumerable,说明如下:IEnumerable:它是一个公开枚举器,该枚举器支持在指定类型 阅读全文
posted @ 2013-12-21 20:23 长白山 阅读(132) 评论(0) 推荐(0)
摘要: 属性是用来包装字段的一个“外壳”或 “代理人”,真正的“主人”还是“字段” 阅读全文
posted @ 2013-12-21 14:33 长白山 阅读(171) 评论(0) 推荐(0)
摘要: 通常可以通用,但要是有特殊情况或详细区分的话,可以参考下面的说法:如果你需要在你的代码初始化静态成员的代码中进行异常处理是可以直接使用静态构造函数,在构造函数中添加异常处理代码;如果是只需要对静态成员进行空间的分配那么直接使用初始化器语法即可——在声明静态成员的时候对其进行初始化。在声明成员变量的同时对其进行初始化(就是指在“堆”中分配内存空间),就叫做初始化器 阅读全文
posted @ 2013-12-21 14:20 长白山 阅读(333) 评论(0) 推荐(0)
摘要: 仅供参考之用:代码风格没有正确与否,重要的是整齐划一,这是我拟的一份《项目代码风格要求》,供大家参考。1. C# 代码风格要求1.1注释类型、属性、事件、方法、方法参数,根据需要添加注释。如果类型、属性、事件、方法、方法参数的名称已经是自解释了,则不需要加注释;否则必须添加注释。当添加注释时,添加方式如下图所示:1.2 类型(类、结构、委托、接口)、字段、属性、方法、事件的命名优先考虑英文,如果英文没有合适的单词描述,可以使用拼音,使用中文是不符合要求的。唯一可以使用中文的地方是枚举的枚举项,枚举项实际已经不属于本节标题的范畴了。这里只是放到一起说明,如下图所示:1.3 不使用缩写所有类型、方 阅读全文
posted @ 2013-12-21 13:42 长白山 阅读(131) 评论(0) 推荐(0)
摘要: 连接:http://www.cnblogs.com/IPrograming/tag/Effective%20C%23/ 阅读全文
posted @ 2013-12-21 13:35 长白山 阅读(137) 评论(0) 推荐(0)
摘要: 我们知道在C#语言中创建一个类型的实例前,就应该初始化该类型的所有静态成员变量。C#语言为我们提供了静态初始化器和静态构造函数。其中,静态构造函数是一个特殊的构造函数,将在其他所有方法执行前以及变量或属性被第一次访问之前将自动调用静态构造函数,且仅执行一次。我们可以通过使用静态构造函数来初始化静态变量、实现单例模式或者执行类在可用之前的所有操作。但是不能够使用实例构造函数专门的私有函数或者其他什么方式来初始化静态变量。 静态类成员变量也有和实例成员类似的初始化器语法,如果只是需要为某个静态成员分配空间,可以直接使用初始化器语法,但是如果需要使用一些更复杂的逻辑来初始化静态成员变量那就应该... 阅读全文
posted @ 2013-12-21 13:33 长白山 阅读(268) 评论(0) 推荐(0)
摘要: 一、用属性代替可访问的字段 1、.NET数据绑定只支持数据绑定,使用属性可以获得数据绑定的好处; 2、在属性的get和set访问器重可使用lock添加多线程的支持。 二、readonly(运行时常量)和const(编译时常量) 1、const只可用于基元类型、枚举、字符串,而readonly则可以是任何的类型; 2、const在编译时将替换成具体的常量,这样如果在引用中同时使用了const和readonly两种值,则对readonly的再次改变将会改变设计的初衷,这是需要重新编译所更改的程序集,以重新引用新的常量值。 3、const比readonly效率高,但失去了应用的灵活性... 阅读全文
posted @ 2013-12-21 13:06 长白山 阅读(247) 评论(0) 推荐(0)
摘要: 1:在WPF中,界面上的动作,效果(甚至包括隐藏,显示等动作)。在界面展示的效果,实际上,在后台使用C#数据(即属性)来支撑这些效果(比如:在前台的触发器中,通过绑定后台“属性”来控制“触发器”是否被触发;当触发时,展现一种效果,当不被触发时,界面效果还原),这样通过使用MVVM框架模式来处理是最好的。2:在处理WPF控件的界面数据显示效果时(添、删、改、查,清除等显示效果),通常不使用WPF控件的属性或方法来处理,而是通过与wpf控件绑定的数据源来处理,通过改变数据源(可能为单一对象或集合),来达到控制WPF控件的界面显示效果(因为控件与数据源是绑定的)。 阅读全文
posted @ 2013-12-20 16:52 长白山 阅读(206) 评论(0) 推荐(0)
上一页 1 ··· 74 75 76 77 78 79 80 81 82 ··· 90 下一页