摘要:
就在几天前,我写了一篇关于Managed Extensibility Framework(MEF)的文章《使用Managed Extensibility Framework方便的扩展应用程序》,有一位朋友提到MEF为什么不在codeplex上,而当时我的回答是不放在Codeplex上是因为它现在还不开源,所以只能放在http://code.msdn.microsoft.com上了。然而,还不到一周的时间,微软就在Codeplex上开放了全部的源码,以及相关的文档等。  阅读全文
posted @ 2008-09-08 00:29 TerryLee 阅读(416) | 评论 (1)编辑
     摘要:
Managed Extensibility Framework(MEF)是.NET平台下的一个扩展性管理框架,它是一系列特性的集合,包括依赖注入(DI)以及Duck Typing等。MEF为开发人员提供了一个工具,让我们可以轻松的对应用程序进行扩展并且对已有的代码产生最小的影响,开发人员在开发过程中根据功能要求定义一些扩展点,之后扩展人员就可以使用这些扩展点与应用程序交互;同时MEF让应用程序与扩展程序之间不产生直接的依赖,这样也允许在多个具有同样的扩展需求之间共享扩展程序。

本文将介绍一下Managed Extensibility Framework的一些基本使用。  阅读全文
posted @ 2008-09-01 00:21 TerryLee 阅读(2267) | 评论 (33)编辑
     摘要:
写下本文缘于前几天博客园一位朋友发表了一篇.NET面试题的文章,其中一个关于DateTime的问题引起了大家激烈的争论,鉴于日期时间类型是大家开发中会频繁使用的一个中数据类型,这里我们有必要来对.NET Framework中的日期时间类型做一个深入的认识。

本文我们将对DateTime,DateTimeOffset,TimeZone,TimeZoneInfo等类型进行讨论。  阅读全文
posted @ 2008-08-29 23:13 TerryLee 阅读(2572) | 评论 (18)编辑
     摘要:
在.NET Framework 3.5中提供了LINQ 支持后,LINQ就以其强大而优雅的编程方式赢得了开发人员的喜爱,而各种LINQ Provider更是满天飞,如LINQ to NHibernate、LINQ to Google等,大有“一切皆LINQ”的趋势。LINQ本身也提供了很好的扩展性,使得我们可以轻松的编写属于自己的LINQ Provider。

本文为打造自己的LINQ Provider系列文章第二篇,主要详细介绍自定义LINQ Provider中两个最重要的接口IQueryable和IQueryProvider。  阅读全文
posted @ 2008-08-25 23:59 TerryLee 阅读(2578) | 评论 (28)编辑
     摘要:
在WPF和Silverlight中的控件模板支持自定义控件的观感,所谓的外观,指控件的视觉效果;而感觉则是控件交互的响应性,如在控件上按下鼠标、控件获得焦点等状态的改变。微软在Silverlight 2 Beta 2中引进了一个新的概念视觉状态管理(Visual State Manager),为我们创建交互性的控件模板提供了极大的方便。接下来我将会用几篇文章来介绍一下Silverlight 2中的视觉状态管理。
本文为该系列第二篇,介绍如何利用Silverlight 2中的视觉状态管理来定制控件观感。  阅读全文
posted @ 2008-08-14 01:04 TerryLee 阅读(3520) | 评论 (26)编辑
     摘要:
在.NET Framework 3.5中提供了LINQ 支持后,LINQ就以其强大而优雅的编程方式赢得了开发人员的喜爱,而各种LINQ Provider更是满天飞,如LINQ to NHibernate、LINQ to Google等,大有“一切皆LINQ”的趋势。LINQ本身也提供了很好的扩展性,使得我们可以轻松的编写属于自己的LINQ Provider。
本文为打造自己的LINQ Provider系列文章第一篇,主要介绍表达式目录树(Expression Tree)的相关知识。  阅读全文
posted @ 2008-08-01 01:19 TerryLee 阅读(7420) | 评论 (75)编辑
     摘要:
且看风清扬的一段话:“……你将这华山派的三四十招融合贯通,设想如何一气呵成,然后全部将它忘干净了,忘的干干净净,一招也不可留在心中。待会便以什么招数也没有的华山剑法,去跟田伯光对打”。如果有人说,既然“无招胜有招”是武学的最高境界,那干脆什么招数都不要学,拿把剑乱挥乱舞,处处破绽,也就是处处无破绽,便是天下第一了。听到这话的人肯定会笑他缺心眼。
这不是一本“是什么”的书,而是一本“如何做”的书,的确书如其名,纵观全书,没有空洞乏味的理论,只有……  阅读全文
posted @ 2008-08-01 01:10 TerryLee 阅读(2242) | 评论 (15)编辑
     摘要:
众所周知,在ASP.NET应用程序中,我们可以使用验证控件进行数据输入的验证,遗憾的是在Silverlight中并没有提供任何验证控件,但Silverlight对于双向数据绑定还是提供了一些基本的数据验证支持,我们可以在set设置器中定义验证规则,并对于不合法数据抛出异常,最后通过捕获验证错误事件来实现数据的验证。

本文将介绍在Silverlight应用程序中如何进行数据验证。  阅读全文
posted @ 2008-07-29 23:37 TerryLee 阅读(4998) | 评论 (38)编辑
     摘要:
很多朋友来信问如何在Silverlight 2中操作Cookie,这里专门写篇文章介绍一下。为了实现在Silverlight应用程序中对于Cookie的操作,我们需要借助于HtmlPage.Document对象。

本文介绍了如何在Silverlight应用程序中操作Cookie,并在最后给出了一个操作Cookie的公用类,大家可以直接在自己的应用程序中使用。  阅读全文
posted @ 2008-07-27 20:30 TerryLee 阅读(5163) | 评论 (20)编辑
     摘要:
RadControls for Silverlight是由telerik推出的一个Silverlight控件集,目前发布了Beta版本,包含的控件有:Menu、MediaPlayer、ProgressBarRadCube、Cube、Slider、Upload、TabControl、NumericUpDown、TreeView等。
TreeView控件主要功能有:水平数据绑定、拖拽功能、丰富的键盘支持、节点选择功能、动画效果、丰富的样式支持。Upload控件主要功能有:异步文件上传、多文件上传支持、路由事件处理模型、可配置的服务端处理、进度显示。
下面看一下其中几个控件的效果。   阅读全文
posted @ 2008-07-27 20:25 TerryLee 阅读(2173) | 评论 (8)编辑
     摘要:
对自己写的Silverlight 2的相关文章做一下汇总,便于大家直接查找。另外,大家如果有关于Silverlight 2方面的问题,也可以在这里提出,我将尽力为大家解答。
1.一步一步学习Silverlight 2系列:主要介绍了Silverlight 2基础,网络与数据访问,图形图像处理、与浏览器的集成等几个方面
2.教程文章:实际项目开发中遇到问题的解决,Silverlight 2中技术教程文章。
3.技巧诀窍:主要是Silverlight 2在使用过程中的一些小技巧。  阅读全文
posted @ 2008-07-21 23:51 TerryLee 阅读(4021) | 评论 (28)编辑
     摘要:
对于Deep Zoom想必大家都已经不陌生了,在Silverlight 2 Beta 1时已经提供了支持,并且提供了相应的工具Deep Zoom Composer。Silverlight 2 Beta 2中对于Deep Zoom又有了很大的改进,现在支持基于XML的DeepZoom集合的Manifest文件,Beta2还对DeepZoom加了可扩展的MultiScaleTileSource支持,更新之后的Deep Zoom Composer可以使我们不用编写一行代码直接可视化的生成Deep Zoom应用。
本文将简单介绍并分析如何使用Deep Zoom Composer制作Deep Zoom的应用。
  阅读全文
posted @ 2008-07-21 23:28 TerryLee 阅读(1973) | 评论 (10)编辑
     摘要:
Corrina Barber在Silverlight 2 Beta 1的时候就完成了四套非常酷的控件样式,这些样式我曾经在个人博客中推荐过。当Silverlight 2升级到Beta 2时,由于引入了视觉状态管理机制,这些样式已经不能再使用。Corrina Barber在第一时间将其中的两套样式升级到了Silverlight 2 Beta 2下。
在Silverlight 2 Beta 1时,我在项目中使用了Bubbly样式,于是给Corrina Barber发信,希望她能提供Bubbly样式的升级版本,由于此前Corrina Barber非常忙,在本周末时,她终于完成了Bubbly样式的升级,并在第一时间发到了我的邮箱中,非常感谢Corrina Barber。  阅读全文
posted @ 2008-07-20 23:45 TerryLee 阅读(2277) | 评论 (13)编辑
     摘要:
XAP文件是Silverlight 2应用程序编译打包后的一个文件,它是一个标准的zip压缩文件,包括了Silverlight 2应用程序所需的一切文件,如程序集、资源文件等。本文将对Silverlight中的XAP文件进行详细的说明。 1.XAP文件是什么 2.如何使用XAP文件 3.XAP文件如何执行 4.XAP文件包含什么 5.XAP文件如何生成  阅读全文
posted @ 2008-07-11 22:56 TerryLee 阅读(3340) | 评论 (37)编辑
     摘要:
众所周知,在Silverlight 2开始每个项目编译后都会打包成为一个xap文件,如果我们要访问当前xap文件中的UserControl比较容易,那我们如何访问一个外部xap文件中的内容呢?甚至于如何访问一个互联网上的xap文件呢?

本文将介绍在Silverlight中如何访问外部xap文件中UserControl。

  阅读全文
posted @ 2008-07-10 22:10 TerryLee 阅读(3389) | 评论 (37)编辑
     摘要:
在开发Silverlight应用程序时,我们经常会遇到这样一种情况,需要在Silverlight应用程序的UserControl中获取ASP.NET页面参数,这个参数不一定来自于当前Silverlight应用程序的宿主页面,而有可能来自于其它的ASP.NET页面。

本文我们简单的介绍一下如何在Silverlight应用程序中获取ASP.NET页面参数。

  阅读全文
posted @ 2008-07-09 23:49 TerryLee 阅读(3699) | 评论 (42)编辑
     摘要:
在WPF和Silverlight中的控件模板支持自定义控件的观感,所谓的外观,指控件的视觉效果;而感觉则是控件交互的响应性,如在控件上按下鼠标、控件获得焦点等状态的改变。微软在Silverlight 2 Beta 2中引进了一个新的概念视觉状态管理(Visual State Manager),为我们创建交互性的控件模板提供了极大的方便。接下来我将会用几篇文章来介绍一下Silverlight 2中的视觉状态管理。

在定义控件时,我们需要严格区分控件的视觉效果和控件的逻辑,这样当我们修改控件外观时将不会影响控件逻辑。Silverlight 2 Beta 2中提出的部件和状态模型,能够很好的解决这一问题,本文我们先来看一些基本的概念。
  阅读全文
posted @ 2008-07-08 21:11 TerryLee 阅读(3339) | 评论 (16)编辑
     摘要:
大家都知道,在Silverlight 2应用程序中,每个应用程序将生成一个xap文件,每一个xap文件中只能设置一个起始的用户控件。如果我们有多个用户控件,需要在不同的ASP.NET页面中加载,最简单的方法莫过于针对多个用户控件分别建立对应的Silverlight项目,但这种方式有很多的缺点,如我们的样式文件需要在多个项目中进行拷贝。

本文将介绍利用初始化参数进行用户控件的切换这一技巧。  阅读全文
posted @ 2008-07-02 21:28 TerryLee 阅读(3872) | 评论 (24)编辑
     摘要:

自从《2008博客园T恤正式发布》之后,昨天终于收到了博客园的T恤,今天迫不及待的跟公司里博客园的兄弟拍了几张“帅照”,这里跟大家分享一下:)



  阅读全文
posted @ 2008-07-02 00:20 TerryLee 阅读(5070) | 评论 (79)编辑