Welcome to All-In-One Code Framework!

Jialiang's Blog

统计

留言簿(1)

积分与排名

友情链接

阅读排行榜

评论排行榜

置顶随笔 #

[置顶]微软全新免费示例代码请求服务正式上线

您还在为找不到所需的示例代码而苦恼吗?

当您遇到困难的时候,您是否曾希望有人免费地为您量身提供示例代码?

 

今天,微软一站式示例代码库项目组宣布了一个全新而且免费的示例代码请求服务。希望能通过这个服务为广大的开发者分担解忧。

 

您可以提交任何和微软开发技术有关的示例代码需求。需求的描述中英文皆可。同时,您还可以对已提交的示例代码需求进行投票。微软工程师会优先考虑那些票数最高的需求,提供示例代码。这一切都是免费的!

 

反馈

您的反馈对微软一站式示例代码库项目组非常重要。作为一个全新的服务,项目组希望在大家的关注和建议下不断改进,为广大开发者更好地服务。反馈邮箱: onecode@microsoft.com

 

该服务更多的信息以及使用方法,请参见官方申明:
http://1code.codeplex.com/wikipage?title=Sample%20Request%20Service%20%28CHS%29

 

您还等什么?快来试试微软全新免费示例代码索取服务吧!

 

微软一站式示例代码库下载地址:http://1code.codeplex.com/releases

 

posted @ 2010-10-28 13:21 Jialiang 阅读(1277) | 评论 (0)编辑 收藏

[置顶]VC++, VC#, VB.NET 编码规范 [微软一站式示例代码库]

应园友在这篇博文中的要求,我们项目组里的蒋里京同学已将VC++, VC#, VB.NET 编码规范 (微软一站式示例代码库) 翻译成中文。你可以在以下链接下载到中文版的编码规范:

下载

原版:http://1code.codeplex.com/releases/view/51868#DownloadId=148423

译版:http://1codechs.codeplex.com/releases/view/51227#DownloadId=148734

 

注:在这篇博文的评论中,园友还给出了不少技术方面的建议。由于时间紧迫,此版本的编码规范尚还没有根据那些技术意见做出相应调整。望您能谅解。

 

本文档为一站式示例代码库项目组所使用的C++ 以及 .NET 编码规范 。该规范源自于产品开发过程中的经验,并在不断完善。如果您发现一些最佳实践或者话题并没有涵盖在本文档中,请联系我们一站式示例代码库项目组 ,以不断充实完善本文档。

 

任何指导准则都可能会众口难调。本规范的目的在于帮助社区开发者提高开发效率,减少代码中可能出现的bug,并增强代码的可维护性。万事开头难,采纳一个不熟悉的规范可能在初期会有一些棘手和困扰,但是这些不适应很快便会消失,它所带来的好处和优势很快便会显现,特别是在当您接手他人代码时。

 

posted @ 2010-09-14 20:36 Jialiang 阅读(1881) | 评论 (2)编辑 收藏

[置顶]微软一站式开发技术框架解决方案 中文说明

微软一站式开发技术框架 解决方案(代号 CodeFx)通过不同编程语言和典型示例勾画出微软几乎所有开发技术的骨架。身处微软MSDN技术支持团队,我们有丰富的客服经验。项目中每一个示例都经我们精心设计、筛选、编排和文档化,从而演示那些经常被客户问到、或被测试人员测试到的编程场景。如果您是一位软件开发工程师,您可以向这个框架填充您的业务逻辑;如果您是测试人员,您可以对某个技术骨架稍作扩展以满足您的实际测试需要;如果您和我们一样,是技术支持工程师,您可以考虑将本项目中的示例代码推荐给您的客户。

项目范围

本项目的目的是通过经常被问到、测试到和使用到的典型事例勾勒出微软开发技术的骨架。您可以将开发技术想象成一栋建筑。技术的细节(即建筑的内部设施)不在CodeFx项目范围内。CodeFx除了为初学者描述了技术的基础(即建筑的地基)外,还绘制出技术的骨架(即建筑的整体结构和外观)。

项目特点

  • 一站式:微软所有开发技术的最典型示例都可以在CodeFx中找到。所有代码、文档和参考资料可以在一个Visual Studio实例中测试和阅读。
  • 骨架:该项目勾勒的是技术骨架。其中的示例并不演示任何特定的业务逻辑,如使用Silverlight开发交通游戏使用ATL设计炫目的烟火。这些特定的业务逻辑可能会分散读者的注意力,令读者没有注意到该技术最核心的东西。
  • 示例的来源:绝大多数示例都来源于我们在微软新闻组MSDN论坛中处理过的客户提问。和FAQ(常见问题解答)相比,您可以把CodeFx想象成常见编码场景。
  • 风格统一
    • 所有示例遵循统一的命名规范。这不仅体现在变量和函数的命名上,还体现在示例名字上,如CSUseADONET, CppUseADONET。
    • 所有示例遵循统一的编码、注释和文档规范。比如,每一个示例都附带一个ReadMe.txt文档。其中包含梗概、示例关系(即当前示例和其他示例的依赖关系)、部署、创建步骤、代码逻辑和经典的参考资料。
    • 各个示例有统一的输出。比如,ATLActiveXDll, ATLActiveXExe, CSDllCOMServer, VBDllCOMServer, MFCActiveX, MFCSafeActiveX, CSActiveX,和VBActiveX是不同语言编写的COM组件骨架。它们输出统一的界面和相同原型的方法、属性以及事件。读者可以比较它们的实现。
  • 相互依赖:部分示例相互之间有依赖关系,共同演示一些特定的技术。比如,CppDllExport是一个C++动态链接库的例子。CppImplicitlyLinkDll依赖于CppDllExport,演示了C++如何隐式链接DLL;CppDelayloadDll同样依赖于CppDllExport,演示了如何延迟加载DLL。

以上五大特点是绝大多数示例库(如codeprojectMSDN)所没有的。除此之外,微软一站式开发技术框架中的示例是典型的、可扩展的、结构化的、完整的、文档齐全易于理解的。

项目现状

本项目自2009年三月一日启动以来,已完成140余个代码示例,涵盖COM、数据访问、库加载、进程间通信、Office开发、Windows Forms、安全等数十项技术。同时,CodeFx正以每周六个示例的速度增长。
以下图示为CodeFx在2009年6月15日时的缩影。要了解最新的示例列表,请点击 微软一站式开发技术框架示例.

 

  • COM示例
COM.png
  • 数据访问示例
Data Access.png
  • 库加载示例
Library.png
  • 进程间通行示例
IPC and RPC.png
  • Office开发示例
Office.png
  • Windows Forms示例
WinForm.png
  • Windows钩子示例
Hook.png
  • 问题诊断示例
Diagnostics.png

获奖情况


Brothersoft


Download.hr

名列榜首

Jialiang Ge (Jialiang)
Lingzhi Sun (LingzhiSun)
ZhiXin Ye (ZhiXin)
Riquel Dong (Riquel)
Hongye Sun (hongyes)
Ji Zhou (Colbert)
Jie Wang (midnightfrank)
Rongchun Zhang (RongchunZhang)
Fisnik Hasani (Fisnik)

特别感谢!

来自瑞典的Fisnik Hasani为我们设计了简洁漂亮的 "CodeFx" 徽标。

反馈和建议

我们期望听到您的反馈和建议。请将您对这个项目的看法发至讨论区或直接联系我们


谢谢!
-MSDN 论坛支持团队 2009年6月20日

posted @ 2009-07-11 10:43 Jialiang 阅读(855) | 评论 (0)编辑 收藏

2010年10月28日 #

微软全新免费示例代码请求服务正式上线

您还在为找不到所需的示例代码而苦恼吗?

当您遇到困难的时候,您是否曾希望有人免费地为您量身提供示例代码?

 

今天,微软一站式示例代码库项目组宣布了一个全新而且免费的示例代码请求服务。希望能通过这个服务为广大的开发者分担解忧。

 

您可以提交任何和微软开发技术有关的示例代码需求。需求的描述中英文皆可。同时,您还可以对已提交的示例代码需求进行投票。微软工程师会优先考虑那些票数最高的需求,提供示例代码。这一切都是免费的!

 

反馈

您的反馈对微软一站式示例代码库项目组非常重要。作为一个全新的服务,项目组希望在大家的关注和建议下不断改进,为广大开发者更好地服务。反馈邮箱: onecode@microsoft.com

 

该服务更多的信息以及使用方法,请参见官方申明:
http://1code.codeplex.com/wikipage?title=Sample%20Request%20Service%20%28CHS%29

 

您还等什么?快来试试微软全新免费示例代码索取服务吧!

 

微软一站式示例代码库下载地址:http://1code.codeplex.com/releases

 

posted @ 2010-10-28 13:21 Jialiang 阅读(1277) | 评论 (0)编辑 收藏

2010年10月14日 #

微软一站式示例代码库2010-10-10 新增代码示例简介

微软一站式示例代码库2010年10月10日更新

 

下载地址http://1code.codeplex.com/releases/view/53729

 

如果您是第一次听说All-In-One Code Framework这个项目,请参阅主页上的相关介绍http://1code.codeplex.com/,  以及这两篇blog

All-In-One Code Framework:一站式微软开发技术框架解决方案

微软一站式开发技术框架解决方案 中文说明

 

Windows Shell 扩展 新示例

(Shell Infotip 扩展)

 

(Shell Drag-and-drop 扩展)

 

这是 使用.NET 4编写Windows Shell Extension 系列示例的第二部分。在.NET 4发布之前,因为一个进程最多只能host一个CLR runtime, 您是不可以使用.NET语言编写shell extension的。.NET 4.0加入了CLR In-process Side-by-Side 特性。张羿写过一篇相当不错的介绍.NET 4 In Process Side By Side的文章:http://blogs.msdn.com/b/yizhang/archive/2009/08/25/net-4-0-in-process-side-by-side.aspx。>=4.0的CLR是可以多个并存的,也就是说V4.0,V5.0,v6.0,等等,都是可以和平共处在同一个进程内。这使得基于.NET Framework 4.0, 5.0, … 开发的managed Windows Shell 扩展成为可能。在这次发布中,我们添加了使用.NET 4 C#, VB.NET 语言 和 native C++ 编写Shell infotip 扩展的例子。

 

CppShellExtInfotipHandler   Shell Infotip handler (C++)  
CSShellExtInfotipHandler     Shell Infotip handler (C#)  
VBShellExtInfotipHandler     Shell Infotip handler (VB.NET)  
CppShellExtDragDropHandler   Shell drag-and-drop handler (C++)  

 

ASP.NET 新示例


CSASPNETImagePreviewExtender, VBASPNETImagePreviewExtender

Microsoft Ajax 扩展程序控件增强了标准 ASP.NET Web 服务器控件的客户端功能。通过使用一个或多个扩展程序控件可以实现标准的 Web 服务器控件(如 TextBox 控件、Button 控件和 Panel 控件),从而在浏览器中提供更丰富的用户体验。例如,若要使用户在向服务器提交表单之前进行确认,可以使用将客户端功能添加到 Button 控件的扩展程序控件。

 

一些ASP.NET社区中的程序员经常会问如何写一个自己的ASP.NET Ajax扩展控件,就像AjaxControlToolkit里的空间一样。在这个例子中,我就一步步地描述了如何创建这么一个控件。ASPNETImagePreviewExtender扩展了标准的Image控件,它让Image初始化为一个缩略图,当用户点击这个缩略图时,客户端会自动显示完整的图片而无需回传获取。

 

CSASPNETAJAXHTMLEditorExtender

HTML编辑器时AjaxControlToolkit中的一个AJAX控件。它让我们可以输入一些HTML格式的数据。由于这是个非常复杂的控件,经常有人问如何添加一个自定义的工具栏控件来使HTML编辑器实现一些自定义的功能。在这个例子中,我一步步地添加了一个自定义的工具栏按钮,并且点击这个按钮,可以让一个<H1>标记环绕 所选取的字符串。

 

CSASPNETAddControlDynamically, VBASPNETAddControlDynamically

此示例演示了如何在ASP.NET页面中动态地添加各种控件.由于HTTP是无状态网络传输协议,我们无法知道控件何时被创建,已经控件的状态何时被改变.但所有的这些属性都可以通过ViewState保存在页面中.在页面下一次回调的时候,通过读取ViewState中的信息,我们可以重建这些控件以使得用户们能够使用它们。

 

CSASPNETBingMaps

在某些时候我们需要在页面中使用地图来表示位置以及周围的信息.而Bing Maps地图API提供了毫不逊色于Google Map 的地图控件,并能够通过编程轻松的控制地图的地点位置,缩放尺度,显示模式等属性.此示例便演示了如何通过简单的AJAX在ASP.NET页面中嵌入Bing Maps地图。

 

CSASPNETAutoComplete

此事例演示如何使用Ajax Control Toolkit里面的AutoComplete Control,AutoComplete可以和一个TextBox控件相结合实现类似google suggest的功能;当你在TextBox中输入若干个字时在其下面会弹出一个panle,里面包含以文本框中文字开头的关键字列表。

 

CSASPNETTheme

CSASPNETTheme 示例展示了如何在同一页面上套用主题布局, 这样就可以给用户不同风格的页面而不用重写页面代码。

 

Office 新示例


CSOfficeRibbonAccessibility, VBOfficeRibbonAccessibility

此示例演示了如何通过Microsoft Active Accessibility API 来做Office 2010的Ribbon用户界面自动化。程序显示一个自定义的主窗体,以层次结构来显示整个Ribbon界面的架构。每页包含若干组, 每组包含若干控件, 以及如何调用这些控件的功能。

 

Windows Base 新示例


CSProcessWatcher,VBProcessWatcher

有时候我们需要在.Net应用程序中监控某个进程的创建,修改或者删除事件。除了使用复杂的P/Invoke 调用Native API 之外,有没有更容易的方式呢?该示例给出了一个非常简便的方式达到该目的 -- 使用WMI轻松的实现对某个进程的创建,修改,删除事件的监控。


CppPlatformDetector, CSPlatformDetector, VBPlatformDetector

这些示例演示了

1。 如何获取当前操作系统的名字,如"Microsoft Windows 7 Enterprise"

2。 如何获取当前操作系统的版本号,如"Microsoft Windows NT 6.1.7600.0”

3。 如何判断当前操作系统是32位的还是64位的。

4。 如何判断当前进程或者是当前系统上运行着的任何一个进程是运行在32位模式上,还是64位模式。

 

WPF 新示例


VBWPFMVVMPractice

这个示例通过一个小游戏, 演示了如何在WPF程序中使用MVVM模式.

 

Windows Forms 新示例


CSWinFormGroupRadioButtons and VBWinFormGroupRadioButtons

我们为了实现某些功能而在我们的WinForm项目中使用RadioButton,但是我们只能将一组RadioButton放在同一个容器内,否则对于这些RadioButton单选功能将失效。这个限制使得板面设计有些不便。此例子演示了怎样将不同容器内的RadioButton组成一个组而实现单选功能。

 

下载
http://1code.codeplex.com/releases/view/53729

 

最后,感谢园子里的朋友的一贯支持。如您对这些示例有任何建议,请联系我们: onecode@microsoft.com

posted @ 2010-10-14 23:20 Jialiang 阅读(1769) | 评论 (0)编辑 收藏

2010年10月10日 #

一站式示例代码库 中文版 2010年9月更新

在这个release中我们的团队完成了15篇示例的翻译工作。在接下来的日子里,我们会陆续翻译完成更多的例子。我们计划在2011年7月前总共翻译完成200篇示例。

下载http://1codechs.codeplex.com/releases/

如果您对翻译内容有任何的意见或建议,欢迎Email 联系我们

 

九月新增中文版示例:

CppUACSelfElevation\CSUACSelfElevation\VBUACSelfElevation

用户账户控制 (UAC)是Windows Vista及后续操作系统中的一个新安全组件。当UAC被完全开启时,管理员的交互操作通常运行在普通用户权限下。这个示例演示了如何去检测当前进程的权限等级,和如何通过许可验证对话框来确认并自我提升此线程的权限等级。

CSLinqToXml\VBLinqToXml

本例阐述了如何在C#中使用Linq to XML从内存对象和SQL Server数据库来创建XML文档。它还同时阐明了在C#中如何写Linq to XML查询语句。当从SQL Server数据库查询数据时它使用了Linq to SQL。 在本例中,您将看到创建XML文档的基本的Linq to XML方法,核心的查询方法以及如何编辑XML文档。

CSSL3SocketClient\VBSL3SocketClient

本项目创建一个套接字客户端示例,它能异步发送字符串消息到服务器和从服务器接收字符串消息 CSSL3SocketServer\VBSL3SocketServer

本项目创建一个套接字socket服务器的示例,它能服务于silverlight和标准的套接字socket客户端。这个套接字socket服务器接受客户端的连接,接收字符串消息和回发响应消息。

CSSL3IsolatedStorage\VBSL3IsolatedStorage

本项目创建一个独立存储器浏览器。使用这个浏览器,用户能查看应用程序独立存储器的虚拟文件结构,也提供如下的文件管理功能:

    创建目录
    上传本地文件到独立存储器
    打开和播放储存在独立存储器中的媒体流
    删除目录/文件
    增加独立存储器的磁盘配额
    从独立存储器保存文件到本地

使用独立存储器设置IsolatedStorageSettings存储/加载配置

CSASPNETAjaxExtender\VBASPNETAjaxExtender

这个CSASPNETAjaxExtender示例演示了如何创建一个ASP.Net Ajax ExtenderControl, 即一个TimePicker允许用户在一个钟面上拖动时针或分针选择一天内的时间.

CSWinFormControls\VBWinFormControls

这个示例阐述了怎样自定义Windows Forms控件。

本示例中,有4个小例子:

1. 拥有多列的组合框。
   展示了怎样在组合框的下拉列表中显示多列数据。

2. 每个列表项拥有不同提示的列表框。
   展示了怎样为列表框中的每个列表项显示不同的提示。    

3. 只能输入数字的文本框。
   展示了怎样使文本框只允许输入数字。

4. 一个椭圆形的按钮。
   展示了怎样创建一个不规则形状的按钮。

posted @ 2010-10-10 22:12 Jialiang 阅读(1810) | 评论 (0)编辑 收藏

2010年9月14日 #

VC++, VC#, VB.NET 编码规范 [微软一站式示例代码库]

应园友在这篇博文中的要求,我们项目组里的蒋里京同学已将VC++, VC#, VB.NET 编码规范 (微软一站式示例代码库) 翻译成中文。你可以在以下链接下载到中文版的编码规范:

下载

原版:http://1code.codeplex.com/releases/view/51868#DownloadId=148423

译版:http://1codechs.codeplex.com/releases/view/51227#DownloadId=148734

 

注:在这篇博文的评论中,园友还给出了不少技术方面的建议。由于时间紧迫,此版本的编码规范尚还没有根据那些技术意见做出相应调整。望您能谅解。

 

本文档为一站式示例代码库项目组所使用的C++ 以及 .NET 编码规范 。该规范源自于产品开发过程中的经验,并在不断完善。如果您发现一些最佳实践或者话题并没有涵盖在本文档中,请联系我们一站式示例代码库项目组 ,以不断充实完善本文档。

 

任何指导准则都可能会众口难调。本规范的目的在于帮助社区开发者提高开发效率,减少代码中可能出现的bug,并增强代码的可维护性。万事开头难,采纳一个不熟悉的规范可能在初期会有一些棘手和困扰,但是这些不适应很快便会消失,它所带来的好处和优势很快便会显现,特别是在当您接手他人代码时。

 

posted @ 2010-09-14 20:36 Jialiang 阅读(1881) | 评论 (2)编辑 收藏

2010年6月1日 #

微软一站式示例代码库 2010-05-31 新增代码示例简介

微软一站式开发技术框架2010年5月31日更新。

 

下载地址:

http://1code.codeplex.com/releases/view/46212#DownloadId=124539 

 

如果您是第一次听说All-In-One Code Framework这个项目,请参阅主页上的相关介绍http://1code.codeplex.com/, 以及这两篇blog

All-In-One Code Framework:一站式微软开发技术框架解决方案

微软一站式开发技术框架解决方案 中文说明


在这次release中,我们除了新加了不少示例代码,还应园子里朋友们的建议,对每个编程语言增加了该语言的示例包。比如对于Silverlight 示例包:All-In-One Silverlight Samples.sln,我们增加了C# 包:All-In-One Silverlight Samples (C#).sln, VB.NET包:All-In-One Silverlight Samples (VB.NET).sln。

 

Azure 新示例

 

CSAzureTableStoragePaging, VBAzureTableStoragePaging
我们经常需要在使用Table Storage的时候同时使用分页功能。然而,因为当前Table Storage的功能限制,我们只能使用继续令牌来实现简单的前一页/后一页分页。这个例子示范了如何在一个MVC程序中实现Table Storage的该分页功能。

 

ASP.NET 新示例

CSASPNETMVCPager
这个例子介绍了如何通过自定义htmlhelper扩展方法来实现分页。
在这个例子中我们首先定义了一个Pager的泛型类,该类用来初始化分页的一些基本属性,如总页数,每页显示多少记录等。接着我们在CustomizePager类中定义了一个htmlhelper扩展方法,该方法用于输出页码。

 

Silverlight 4 新示例

CSSL4COMInterop, VBSL4COMInterop
CSSL4COMInterop和VBSL4COMInterop 示例展示了Silverlight4的一个新特性: COM交互。示例程序通过使用AutomationFactory类,将数据导出到notepad或 MS Word并打印。

 

Windows 7 新示例

 

CppWin7MultiTouch
本示例演示如何使用Windows 7的多点触摸功能创建一个简单但是现代化的图片浏览器。你可以用手指对图片进行平移,缩放,旋转,以及倾斜。图片本身使用Windows 7的新技术:Direct2D和WIC来显示。

假如你没有触摸屏,也可以使用ribbon上的命令和图片进行简单的互动。为了保持示例代码的简洁性,本示例并未实现在诸如Expression Design中可以找到的复杂的鼠标交互功能。

CSWPF3DMultiTouch, VBWPF3DMultiTouch
本示例演示如何使用WPF 4的多点触摸功能操作一个3D场景。它绘制了一个地球。你可以用手指让地球沿任意方向旋转(并不只是沿经纬度旋转)。你也可以使用标准的缩放手势来缩放地球。如果你点中了一个Windows Azure的数据中心,一条提示消息会显示出来。

假如你没有触摸屏,也可以使用鼠标来模拟操作。在示例源代码中,你将发现事实上使用WPF的manipulation framework实现多点触摸实要比处理鼠标事件还要简单。

 

WPF 新示例

 

CSWPFNavigationUsage
这个例子展示了在WPF应用程序中如何实现浏览。

 

Data Platform 新示例

CSEFLazyLoading, VBEFLazyLoading
CSEFLazyLoading和VBEFLazyLoading向您展示了如何使用Lazy Loading这一EF4中新增的特性。同时这两个示例也展示了如何使用我们在EF1中早已使用的eager loading和explicit loading,并且对这三种导入相关实体的方法进行了比较。

 

.NET CLR 4 新示例

 

CppHostCLR, CSClassLibrary, CSNET2ClassLibrary
.NET 4的CLR引入了in-process side-by-side的新特性。允许你在同一个进程内host多个CLR。CppHostCLR演示了如何在一个native C++的程序里使用CLR 4 的CLR Hosting API, 在一个进程内,载入CLR 4和CLR 2,并在两个CLR内分别调用一个.NET 2.0的class library (CSNET2ClassLibrary)。

 

Windows Forms 新示例

 

CSWinFormTreeViewTraversal, VBWinFormTreeViewTraversal
这个示例演示了如何遍历TreeView控件并找寻特定的结点。 有时候我们有列出一棵树的所有节点以及查询某个特定节点的需求。 示例中有一个算法使用了非递归方式来完成这个任务。具体请看FindNode方法的代码逻辑。

CSWinFormDesignerCodeDom, VBWinFormDesignerCodeDom
这个示例演示了如何为控件添加你自己的生成代码。

在这个示例中,如果我们不进行代码自定义,系统将对MyList属性生成如下代码
this.myComponent1.MyList =
((System.Collections.Generic.List<string>)(resources.GetObject("myComponent1.MyList")));

But now we want the code with following format
this.myComponent1.MyList.Add("string5");
this.myComponent1.MyList.Add("string4");
this.myComponent1.MyList.Add("string3");
this.myComponent1.MyList.Add("string2");
this.myComponent1.MyList.Add("string1");

但现在我们希望Visual Studio可以生成以下格式的代码
this.myComponent1.MyList.Add("string5");
this.myComponent1.MyList.Add("string4");
this.myComponent1.MyList.Add("string3");
this.myComponent1.MyList.Add("string2");
this.myComponent1.MyList.Add("string1");

在这里,我们创建了CodeDomSerializer的继承类MyCodeGenerator来完成这个任务。请参看CodeGenerator.cs/CodeGenerator.vb来得到具体信息。

 

Windows Service 新示例

 

CppInteractiveWindowsService
该示例演示了Windows Service和用户session 交互的正确做法。Windows Vista 引入了session 0 isolation的概念。运行在Windows Vista和更新的操作系统上的Windows Service便不能直接和用户交互了。如果你的service非得要和用户交互,推荐的方法有如下两个:

1. 调用WTSSendMessage在用户session里显示一个对话框。

2. 通过调用CreateProcessAsUser在用户session里创建一个新的可交互的进程。该进程再和Windows Service进行进程间通信。

CppInteractiveWindowsService便是演示了上述两种solution。

 

最后,如果您对新版的All-In-One Code Framework有任何建议和反馈,请在此提出或发邮件至onecode@microsoft.com 。谢谢!

posted @ 2010-06-01 20:32 Jialiang 阅读(1696) | 评论 (0)编辑 收藏

2010年3月30日 #

微软一站式示例代码库 2010-03-29 新增代码示例简介

微软一站式开发技术框架2010年3月29日更新。下载地址:

http://1code.codeplex.com/releases/view/42689

在这次release中, 我们加入了不少Windows Azure 云计算相关的示例代码。

 

如果您是第一次听说All-In-One Code Framework这个项目,请参阅主页上的相关介绍http://1code.codeplex.com/, 以及这两篇blog

All-In-One Code Framework:一站式微软开发技术框架解决方案

微软一站式开发技术框架解决方案 中文说明

 

Windows Azure 新示例

下载地址:http://1code.codeplex.com/releases/view/42689#DownloadId=113179

 

CSAzureServiceBusWCFDS, VBAzureServiceBusWCFDS

演示了如何使用Service Bus和WCF Data Services在云端程序访问本地的SQL Server数据。这个项目也提供了一个ASP.NET客户端用于测试服务。你可以很轻松的将这个客户段转换成一个Windows Azure的Web Role,真正的在云端进行测试。

CSAzureTableStorageWCFDS, VBAzureTableStorageWCFDS

演示了如何使用WCF Data Services将存放在Windows Azure Table Storage中的数据发布至全世界。该示例也提供了一个Silverlight客户端用于测试服务。

CSAzureServiceBusSLRest, CSAzureStorageRESTAPI

在一些情况下我们需要调用REST API而不是直接使用SDK提供的StorageClient类。比如,往Table Storage中插入无固定模式的数据,使用其他编程语言些一个”StorageClient”类,等等。本例子说明了如何创建HTTP 消息来调用List Blobs API。你可以重用部分代码来为调用其他REST API添加authentication HTTP消息头。

CSAzureServiceBusSLRest, VBAzureServiceBusSLRest

本示例演示了如何使用Windows Azure platform AppFabric Service Bus将运行与本机的WCF服务暴露给internet上的Silverlight客户端。本示例使用的是一个WCF REST Service,但是同样的方法也适用于其它类型的WCF服务。

 

WPF 新示例

 

CSWPFCascadeDataGridComboBoxColumns, VBWPFCascadeDataGridComboBoxColumns

这个例子展示了如何在DataGrid的两个的ComboBox列的下拉列表中显示级联数据。编译和运行这个sample前,你需要安装WPF Toolkit

sample-pic1

 

Security 新示例

 

CppCreateLowIntegrityProcess, CSCreateLowIntegrityProcess, VBCreateLowIntegrityProcess

这些是和 UAC 相关的例子。演示了如何通过VC++ 或 C# 或 VB.NET 代码创建一个低integrity level的进程。低integrity level的进程所能访问的资源是非常有限的。比如它们不能往LocalAppData known folder (C:\Users\<username>\AppData\Local)里写数据文件,而只能往LocalAppDataLow known folder (C:\Users\<username>\AppData\LocalLow\)里写。这样的进程是非常安全的。你可以完全相信这样的进程不会对你的系统造成破坏。Protected Mode IE 就是一个典型的low integrity process。

 

进程间通信 新示例

 

VBNamedPipeClient, VBNamedPipeServer

这是过去发布的Named Pipe示例的VB.NET版本。演示了如何通过named pipe在进程间传递数据。

VBFileMappingServer, VBFileMappingClient

这是过去发布的 file mapping示例的VB.NET版本。演示了如何通过 file mapping 在进程间共享数据。

 

线程相关的新示例

 

CSThreadingBasic, VBThreadingBasic

演示了C#和VB.NET操纵线程的最基本的操作,如创建线程,使用线程池,等。

CSThreadingMonitor, VBThreadingMonitor

演示了C#和VB.NET中如何使用Monitor来做到线程同步。

 

窗口程序 新示例

 

CppWindowsOwnerDrawnMenu

演示了如何在C++窗口程序中 owner-draw 菜单项

 

Data Platform 新示例

 

VBLinqExtension

VBLinqExtension对LINQ查询的数据源进行了拓展,其中包括了几个简单的LINQ拓展库,比如LINQ to CSV、LINQ to File System、LINQ to Reflection以及LINQ to String。LINQ to CSV的功能是将CSV文件的数据逐行解析成字符串数组;LINQ to File System可以将文件夹中的文件以拓展名进行归类并得到其中最大的文件;LINQ to Reflection的功能是在.NET Assembly中,按函数返回值类型对导出类的函数进行归类;LINQ to String的功能包括了过滤字符串中的数字字符,统计单词的出现频率,以及搜索含有特定单词集合的句子。在今后的发布的All-In-One Code Framework(AIO)中,我们还将新增一些其他的LINQ拓展库,比如LINQ to WMI。

VBUseADO

演示了VB.NET中如何使用ADO (非ADO.NET) 访问数据库。

 

Windows Forms 新示例

 

VBWinFormDesigner

都是些Winforms designer相关的典型sample: Adornment (演示了如何在Designer上进行绘制), CustomPropertyTab (演示了如何在属性窗口上添加一个标签页), EnableDesignTimeFuncForChildCtrl (演示了如何让子控件具有设计时的功能), MouseEvents (演示了如何捕捉设计时时的鼠标事件), SmartTags (演示了设计时的智能标签功能), PropertDisplayOrder (演示了如何改变对象的属性在属性窗口上的显示顺序)和CustomUITypeEditor (演示了如何自定义一个设计时的属性编辑器)。

 

最后,如果您对新版的AIO有任何建议和反馈,请在此提出或发邮件至codefxf@microsoft.com。谢谢!

posted @ 2010-03-30 11:43 Jialiang 阅读(1326) | 评论 (0)编辑 收藏

2009年11月20日 #

CodeFx: 微软一站式开发技术框架 2009-11-15 新增代码示例简介

微软一站式开发技术框架2009年11月15日更新。下载地址:

http://cfx.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=35920

如果您是第一次听说All-In-One Code Framework这个项目,请参阅主页上的相关介绍http://cfx.codeplex.com/, 以及这两篇blog

CodeFx:一站式微软开发技术框架解决方案

微软一站式开发技术框架解决方案 中文说明

 

CSASPNETMVCCustomActionFilter
CSASPNETMVCCustomActionFilter 事例代码主要演示了如何使用自定义的ActionFilter对ASP.NET MVC的处理流程进行扩展处理。其中包括对  MVC Controller Action类的方法执行进行预处理和后续处理,以及对于Model中的数据进行展示前的修改控制。

VBASPNETImageMap
这段代码演示了如何使用ImageMap控件以及VB.NET语言建立一个介绍太阳系各个行星的网页.当图片中各个行星的图形被点击之后,图片下方的Label会显示出你所选择的行星,并且关于这颗行星的介绍(引自wikipedia)将会在图片下方的iframe区域中显示出来.

CSASPNETReportViewerExport
这个ASP.NET示例演示了如何通过编程手段从ReportViewer控件导出报表到PDF或Excel文件中。

CSASPNETFormViewUpload
这个例子介绍了怎样在一个ASP.NET FormView 控件中显示和上传图片以及怎样实现插入,编辑,更新,删除和分页功能。 所有的图片和数据都存储在一个SQL Server 数据库中。
项目包括了2个页面: Default 和 Image
Default 页面从SQL Server 数据库中接受数据然后填充FormView控件,并且提供数据操作界面。
Image页面从SQL Server 数据库中接受图像并且显示在页面中。

CSASPNETCacheAPI
这个示例演示了如何使用ASP.NET Cache API的功能:依赖文件的Cache,依赖其他Cache对象的Cache,基于absolute and sliding 时间的Cache。

CSASPNETAjaxScriptControl
CSASPNETAjaxScriptControl 实例显示了如何利用Asp.net Ajax ScriptControl模型创建一个Ajax Control。
实例中,实现了一个日程安排控件,允许用户在日历控件中设置不同的任务,并允许用户拖动任务窗口实现修改删除功能。

CSSL3HTMLBridge, VBSL3HTMLBridge
此项目演示了silverlight与JavaScript之间的互操作。项目包含如下4个例子:
•    用托管代码调用JavaScript函数
•    在托管代码中处理html对象事件
•    用JavaScript调用托管代码函数
•    用JavaScript处理托管代码事件

CSWPFDataBinding
CSWPFDataBinding示例展示了在WPF中如何使用XAML语言 和 C# 过程语言来实现数据绑定。

CSWPFMasterDetailBinding
演示了WPF中主从(Master-Detail)绑定的实现。

CSWPFAutoCompleteTextBox
CSWPFAutoCompleteTextBox 示例展示了如何在WPF中实现自动完成输入的TextBox(文本框)控件。

VBVstoGetWrapperObject, VBVstoServerDocument, VBVstoExcelWorkbook, VBVstoVBAInterop
这些sample是过去发布的C# VSTO sample的VB.NET版本。演示了如何得到VSTO Wrapper对象,如何通过ServerDocument类从VSTO Word或Excel文件中提取信息,如何制作VSTO document-level Excel workbook,如何通过VSTO调用VBA macro等等。

CSEFEntityDataModel, VBEFEntityDataModel
这两个示例介绍了如何通过Visual C#和Visual Basic并使用各种不同的方式来操作实体数据模型。它们包含了多对多联系,一对多联系,一对一联系,合并表,拆分表,TPH(table per hierarchy)继承, TPT(table per type)继承。在这两个示例中,你将看到如何使用这些方式,来对实体进行插入,更新,和查询操作。

CSVSService
VS服务是两个不同的VSPackage之间通信的一种方式。 一个VSPackage可以通过支持一组特定的接口,以COM的形式给别的VSPackage提供服务。Visual Studio本身就是很多服务的提供者,通过查询这些服务的接口,我们可以定制Visual Studio的许多功能模块和实现自动化。例如,我们可以通过SVsActivityLog服务获得IVsActivityLog接口,从而调用IVsActivityLog接口提供的方法去写活动日志。 CSVSService示例包括几下的内容:
•    实现了一个VSPackage作为服务提供者,本示例同时提供了一个全局服务和一个本地服务。
•    如何注册我们的服务。
•    如何在其它的VSPackage中使用这个服务。

CppDllCOMServer
COM是Windows下应用非常广泛的技术,许许多多的技术都是基于COM的。例如,ActiveX控制,WMI,甚至是CLR,其本身就是一个巨大的COM服务器。本示例展示了怎样在Win32 DLL工程中创建一个进程内的COM组件,详细的介绍了COM进程内组件的几个基本要素,包括:
•    使用IDL(接口描述语言)定义我们的接口和类型库。
•    介绍IUnknow接口的三个方法:AddRef(),Release(),QueryInterface() 以及如何实现它。
•    如何实现类工厂。
•    全局导出函数的作用以及如何实现它们。

VBExeCOMServer
该示例演示了如何通过VB.NET代码编写进程外COM组件。

CSXPath, VBXPath
演示了如何通过XPath在XML文件中导航和筛选数据。

MFCTaskDialog
这是一个VS2010 Beta2的sample。演示了VS2010 MFC中新增加的类CTaskDialog

A sample CTaskDialog

MFCDialog
该示例演示了MFC中模式和无模式对话框的显示。

CSVSPackageInvokeCoreEditor

Visual Studio核心编辑器是Visual Studio默认的编辑器。它支持文字编辑功能包括插入,删除,复制和粘贴。它能与language service结合支持像:语法高亮,代码缩进和智能感知功能。

此示例展示了核心编辑器的基本操作,其中包括了:
1. 初始化核心编辑器,加入IVsTextBuffer和IVsCodeWindow
2. 绑定核心编辑器文件名后缀名,例如:.codefx
3. 在工具/选项中提供选项页面,使用户可以选择核心编辑器中的语言(VB, CS和XML)

CSWFLocalService
通过一个猜数游戏演示了Windows Workflow Foundation 3.5中Local Service的特性。

CSIISAdminWMI
演示了通过WMI来配置IIS应用程序。

 

如果您对新版的CodeFx有任何建议和反馈,请在此提出。谢谢!

posted @ 2009-11-20 22:09 Jialiang 阅读(1306) | 评论 (0)编辑 收藏

2009年9月21日 #

CodeFx: 微软一站式开发技术框架 2009-9-17 新增代码示例简介

微软一站式开发技术框架2009年9月17日更新。下载地址:

http://cfx.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=33087

如果您是第一次听说All-In-One Code Framework这个项目,请参阅主页上的相关介绍http://cfx.codeplex.com/,以及这两篇blog

CodeFx:一站式微软开发技术框架解决方案

微软一站式开发技术框架解决方案 中文说明

 

CSWin7TaskbarAppID,VBWin7TaskbarAppID,CppWin7TaskbarAppID
Application User Model ID (AppID) 是Windows 7任务栏新引入的一大特性。拥有同一个AppID的应用程序,其在Windows 7的任务栏按钮会被定义在同一个分组中,彼此重叠在一起。同时AppID也是定义应用程序Jump List的重要依据。CSWin7TaskbarAppID、VBWin7TaskbarAppID演示了如何通过Windows API Code Pack设置进程级别的AppID,以及修改进程中特定窗口的AppID。CppWin7TaskbarAppID则演示了使用C++和Windows API设置进程级别的AppID,以及修改进程中特定窗口的AppID,此范例需要安装Windows 7 SDK才能成功编译。

CSWin7TaskbarOverlayIcons,,VBWin7TaskbarOverlayIcons,CSWin7TaskbarProgressbar,VBWin7TaskbarProgressbar
应用程序可以在其Windows 7的任务栏按钮上设置Overlay Icons与Progressbar以显示其不同的工作状态与任务进度。CSWin7TaskbarOverlayIcons,,VBWin7TaskbarOverlayIcons,CSWin7TaskbarProgressbar,VBWin7TaskbarProgressbar演示了如何应用Windows API Code Pack设置应用程序任务栏按钮的Overlay Icons以及Progressbar的进度与状态。

CSWin7TaskbarThumbnail,VBWin7TaskbarThumbnail
应用程序可自定义其任务栏Thumbnail预览效果和Thumbnail工具栏按钮是Windows 7新引入的特性。CSWin7TaskbarThumbnail,VBWin7TaskbarThumbnail演示了如何应用Windows API Code Pack设置应用程序任务栏Thumbnail预览的效果以及自定义Thumbnail工具栏按钮。

CSWin7TaskbarJumpList,VBWin7TaskbarJumpList
Jump List是Windows 7新引入的又一特性。通过Jump List,用户可以更方便快捷地找到自己近期或经常通过某一个应用程序打开的文件。应用程序还可以在Jump List中添加用户任务以方便用户打开其他相关的应用程序,在Jump List中自定义类别、文件项目、文件链接。CSWin7TaskbarJumpList,VBWin7TaskbarJumpList演示了如何以AppID注册应用程序以及文件句柄,通过Window API Code Pack设置Jump List用户任务和自定义Jump List类别、文件项目和文件链接。

XAMLSL3SplashScreen
XAMLSL3SplashScreen 演示了如何为Silverlight程序设置自定义的启动画面。当Silverlight程序正在下载时,默认情况下会有一个自带的启动画面。如果想要改变这个启动画面,我们可以自己定义一个。此外,在ReadMe.txt中还谈到了一些使用SplashScreen的限制。

CSSL3Animation, VBSL3Animation
CSSL3Animation和VBSL3Animation演示了如何在Silverlight中创建动画效果。由于Silverilght中自带的动画效果类很多,不可能在一个项目中全部涉及。因此项目中只包括了Point和 Double数据类型相关的动画。其他动画效果的代码大同小异,不在此赘述。
项目演示了:
•    如何通过XAML来进行PointAnimation
•    如何通过Code Behind来进行PointAnimation
•    如何用PointAnimation来对自定义的属性做动画效果
•    如何使用Silverlight 3新功能: Easing
•    如何使用关键帧做出动画效果

CSSL3DeepZoom, VBSL3DeepZoom
Silverlight deep zoom 提供了一种高效的方式来展示高分辨率的图片以及大量图片的集合。用户在一开始下载的是大型图片(集合)的缩略图,这个缩略图的分辨率比较低。随着他们渐渐放大图片上的某一部分,分辨率较高的图片中的那一部分会被下载到客户端。此外,你还可以在自己的程序中对deep zoom进行大量的自定义,使deep zoom的场景完美地融合到你的程序中。这个例子展示了一些常见的deep zoom的自定义方法。它包括:

•    使用Deep Zoom Composer来创建deep zoom场景。
•    下载并解析metadata。
•    在一个collection场景中实现hit test。
•    创建一个非位图的UIElment,并且让它和MultiScaleImage一起移动,协同缩放。
•    在一个collection场景中移动一张sub image。
•    使用DeepZoomTools.dll在代码中动态创建deep zoom场景。

CSSL3WriteableBitmap
WriteableBitmap是Silverlight 3的一个新功能。你可以用它来操作位图中的每一个像素。你可以想到很多很多应用场景,不过,出于安全性考虑(例如,Silverlight不允许你写使用指针的unsafe代码),和同样的桌面程序相比,你可能需要写更多的代码。这个例子包括3个小的示例,展示了使用WriteableBitmap的常见场景:

•    Gun shoot。你可以选择两张不同大小的图片。该示例将会把他们缩放到相同的分辨率,并且将一张图片覆盖于另一张上方。当你点击上方的图片开枪时,一个枪痕将会显现,并且你会射穿上面那幅画,从而可以看到下面的画的内容。该示例展示了如何将不同分辨率的元图片缩放到相同的分辨率,以及如何修改某个单独的像素。
•    Fill color。该示例实现了绘图软件中常见的一个场景:油漆桶,也就是为某块区域填充上同样的色彩。它展示了如何在Silverlight WriteableBitmap中应用常见的图形学算法,并且还通过模拟CLR调用堆栈的方式解决了过深的递归可能造成的stack overflow问题。
•    Screenshot。该示例展示了WriteableBitmap的另一功能:创建屏幕截图,并且把结果保存为一个bmp文件。它也说明了该功能的一些局限性。

为了发掘出WriteableBitmap的强大潜力,你需要一些图形学的知识。例如,你必须掌握位图是如何在内存中存储的,必须了解关于像素和颜色的基本知识,等等。为了提高效率,你还必须学会位移运算。

CSSL3CustomControl
CSSL3CustomControl 是一个silverlight library 项目。 通过实现一个可显示高亮文本的HighLightTextBlock,项目展示了如何创建自定义控件。以及通过关联项目XAMLSL3StyleControlTemplate,展示如何利用style来更改HighLightTextBlock外观。

CSADONETDataServiceSL3Client, VBADONETDataServiceSL3Client
CSADONETDataServiceSL3Client和VBADONETDataServiceSL3Client 演示了如何在Silverlight中访问ADO.NET Data Services。在项目中,使用ADO.NET Data Services暴露出的URL来生成代理类,然后通过代理类与服务器端进行通信,进行查询、修改、添加、删除的操作。在项目中一共生成了三个代理类,分别对应服务器端程序CSADONETDataService中的三个服务。此外,项目中的ReadMe.txt还介绍了一些在使用Silverlight访问ADO.NET Data Services时可能遇到的情况。

CSASPNETMVCFileDownload
这是CodeFx中第一个ASP.NET MVC例子。10月份我们会有更多的ASP.NET MVC示例问世。CSASPNETMVCFileDownload演示了一个文件下载的例子。其中包括注册自定义URL路由,以及自定义ActionResult。

CSASPNETGridView, CSASPNETDataPager, CSASPNETMenu
这三个示例分别演示了ASP.NET GridView, DataPager, Menu控件的用法。

VBASPNETMasterPage
这个例子示范了在ASP.NET模板页的使用。使用 ASP.NET 母版页可以为应用程序中的页创建一致的布局。单个母版页可以为应用程序中的所有页(或一组页)定义所需的外观和标准行为。然后可以创建包含要显示的内容的各个内容页。当用户请求内容页时,这些内容页与母版页合并以将母版页的布局与内容页的内容组合在一起输出。

CSASPNETOutputCache
CSASPNETOutputCache演示了ASP.NET Output Cache以增加页面响应速度。相关blog: http://blogs.msdn.com/codefx/archive/2009/09/07/asp-net-output-cache.aspx

VBListFilesInDirectory
这是CSListFilesInDirectory示例的VB.NET版本。其源于一个在论坛里经常被问到的问题:.NET BCL中的Directory.GetFiles 方法可以枚举某个文件夹下的文件,但它有个很致命的缺点。Directory.GetFiles是等枚举到所有文件以后才会返回。如果该文件夹下的文件很多,或者这是一个网络文件夹,即访问速度比较慢,Directory.GetFiles就会hang在那里。你可能就需要同步地等待它的返回。一个理想的解决方案是,每枚举到一个文件,就立刻返回这个文件,而不是等待枚举到所有文件。CSListFilesInDirectory和VBListFilesInDirectory演示了如何做到这一点。

ATLShellExtIconHandler, ATLShellExtIconOverlayHandler
这两个Windows Shell Extension的例子分别演示了Icon HandlerIcon Overlay Handler的开发。

CSVSPackage
VSPackages 是用来扩展Visual Studio集成开发环境的模块。通过VSPackage, 我们可以提供自定义的UI元素,比如工具栏,定制的代码编辑器以及UI设计器,还通过VSPackage来提供自定义的service。实际上,VSPackage是构成Visual Studio的最基本的单元,Visual Studio 本身就是由众多VSPackage构成的。本例就是演示如何通过Visual Studio Integration Package Wizard 来创建一个简单的VSPackage。在以后的CodeFx示例中,我们还将增一些示例来说明如何通过VSPackage来扩展Visual Studio。

CSVSPackageState
此示例展示了插件选项状态持久化,和属性窗口状态。此示例并不包含解决方案和项目文件的状态管理,它们将会在项目文件插件示例中演示。

•    工具/选项 页面

在Visual Studio中选择 工具/选项 目录打开选项窗口。树状导向面板中包含了选项分类和每个分类中的选项页面。当你选择页面时,选项出现在右边面板。此页面使用户可以改变选项值,也就是VS插件的状态。DialogPage类实现了IProfileManager,它提供了选项页面和用户设定的持久化功能。LoadSettingsFromStorage和SaveSettingsToStorage方法默认实现了把属性存入注册表中用户部分,前提是属性是可以被转化为字符串形式。
clip_image001

•    属性窗口

在此示例中,我们将使用ToolWindow来展示属性窗口。当用户选中Visual Studio中的对象时, 对象上所有公共的属性都会像是在属性窗口中。如要用代码来选中一个对象时,需要将此对象放入一个选择容器中。我们使用STrackSelection 服务来通知Visual Studio。
clip_image001[4]

 

最后,如果您对新版的CodeFx有任何建议和反馈,请在此提出。谢谢!

posted @ 2009-09-21 17:44 Jialiang 阅读(1385) | 评论 (0)编辑 收藏

2009年8月27日 #

CodeFx: 微软一站式开发技术框架解决方案 2009-8-26 新增sample code简介

微软一站式开发技术框架解决方案 2009年8月26号更新。下载地址:

http://cfx.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=32006

如果您是第一次听说All-In-One Code Framework这个项目,请参阅主页上的相关介绍http://cfx.codeplex.com/,以及这两篇blog

CodeFx:一站式微软开发技术框架解决方案

微软一站式开发技术框架解决方案 中文说明

 

在这次更新中,我们新增了不少Windows 7以及Windows 7 应用程序兼容性相关的sample。其中C++编写时代码示例,你需要安装Windows 7 SDK才能成功编译。

CSWin7TriggerStartService, VBWin7TriggerStartService
Trigger-start Service是Windows 7中的一大新特性。在Win7中Windows Service可以注册一些事件如USB插入。当这些事件触发时,Windows Service自动启动或关闭。如此一来,Service可以按需启动,从而提高系统的整体性能。CSWin7TriggerStartService和VBWin7TriggerStartService 演示的就是如何编写.NET代码开发Trigger Start Service。示例中你可以看到如何注册USB插入事件,以及如何注册网络连接和断开事件。

CppWin7ShellLibrary, CSWin7ShellLibrary
Shell Library同样是Windows 7中新引入的概念。Library是从过去的My Documents这个概念自然演变过来的。A library is a common store of user defined locations that applications can leverage to manage user content as their part of the user experience. CppWin7ShellLibrary和CSWin7ShellLibrary演示如何创建、打开、删除、重命名shell library,以及如何添加、删除、枚举shell library中的用户自定义文件夹。

CppCheckOSVersion, CSCheckOSVersion
这两个示例演示了如何正确检测当前操作系统版本。系统版本的检测和应用程序兼容性有着密切的关系。顺便说一下,Windows Vista的系统版本号是6.0。Windows7的操作系统版本是6.1,而不是7.0或7.1。

CSASPNETCascadingDropDownList
CSASPNETCascadingDropDownList 示例包含了两个例子:有页面刷新的级联下拉框 和无页面刷新的级联下拉框。前者主要是利用DropDown List 的SelectedIndexChanged 事件来绑定子DropDown List;第二个主要是使用XMLHttpRequest和JavaScript在客户端实现无刷新的级联DropDown List。

CSASPNETPageValidation
通过一个简单的用户名注册示例,介绍如何使用一组ASP.NET 验证控件对一些页面的通信类进行验证。

CSASPNETAjaxExtender
CSASPNETAjaxExtender 的实例主要介绍了如何使用ASP.Net Ajax Extender模型创建Extender控件。并且,在实例中描述了创建TimePicker Extender 控件的过程。TimePicker控件是一个时间选择器,用户可以通过拖动时间指针来选择时间。

VBADONETDataService, VBADONETDataServiceClient
这两个是ADO.NET Data Service 示例的VB.NET版本。C#版本请参见CSADONETDataService和CSADONETDataServiceClient。

CSXmlSerialization, VBXmlSerialization
演示了如何将一个.NET对象XML 序列化到一个文件,再从这个文件反序列化成一个.NET对象。

CSWinFormSplashScreen
演示了两种给C#编写的WinForm程序添加splash screen的方法。方法一:在Application.Run 应用程序的主窗体之前,先Application.Run一个splash screen窗体。方法二:添加对Microsoft.VisualBasic的引用,然后通过Microsoft.VisualBasic.ApplicationServices.WindowsFormsApplicationBase类来实现自定义的splash screen。

 

最后,如果您对新版的CodeFx有任何建议和反馈,请在此提出。谢谢!

posted @ 2009-08-27 12:11 Jialiang 阅读(1257) | 评论 (0)编辑 收藏

2009年7月30日 #

CodeFx: 微软一站式开发技术框架解决方案 2009-7-30 新增sample code简介

微软一站式开发技术框架解决方案 2009年7月30号更新:

http://cfx.codeplex.com/Wiki/View.aspx?title=All-In-One%20Code%20Framework%20Examples

下载地址:

http://cfx.codeplex.com/Release/ProjectReleases.aspx?ReleaseId=30817

如果您是第一次听说All-In-One Code Framework这个项目,请参阅主页上的相关介绍http://cfx.codeplex.com/,以及这两篇blog

CodeFx:一站式微软开发技术框架解决方案

微软一站式开发技术框架解决方案 中文说明

 

在这次更新中,我们新增了大量的Silverlight 3的sample。要运行这些Silverlight sample,你需要安装Silverlight 3 Tools for Visual Studio 2008 SP1。另外,你还可以找到不少ADO.NET Data Service, Windows Shell, ASP.NET的示例。

CSSL3PlaneProjection, VBSL3PlaneProjection
这些sample演示了如何使用Silverlight 3新增的3D透视特性。PlaneProjection是3D透视中最常被使用的一种透视对象。在示例中,你可以看到如何通过调整PlaneProjection对象的属性来控制立体投影。投影以后,被投影的控件仍能正常工作。

CSSL3PixelShader, VBSL3PixelShader
PixelShader效果同样也是Silverlight 3中新增的特性。示例演示了如何使用内建的DropShadowEffect效果,以及如何创建和使用一个自定义的ShaderEffect。

CSSL3FullScreen, VBSL3FullScreen
这两个sample则演示了Silverlight 3的全屏特性。在全屏模式下,部分键盘事件是无法捕获的。

CSSL3Input, VBSL3Input
演示如何在Silverlight 3中处理鼠标和键盘事件,以及如何实现鼠标拖拽功能。

CSSL3Text, VBSL3Text, XamlSL3Text
CSSL3Text, VBSL3Text, XamlSL3Text展示了Silverlight 3中和文本相关的特性,包括如何创建一个简单的TextBlock,如何在这TextBlock中加入LineBreak或高级format,等等。这三个sample通过不同的编程语言(C#, VB.NET, Xaml) 展示出一个统一的UI,以方便读者比较其不同的实现方法。

XamlSL3StyleControlTemplate
XamlSL3StyleControlTemplate是和Silverlight3中Style和ControlTemplate相关的sample。

CSADONETDataService, CSADONETDataServiceClient
CSADONETDataService是用Visual C#编写的ADO.NET 数据服务框架的服务端程序。它引用了三种不同的数据源:ADO.NET 实体数据模型、LINQ To SQL 数据类、以及简单的内存数据。同时它也自定义了服务操作和侦听器来对ADO.NET数据服务的URI资源进行扩展。CSADONETDataServiceClient是ADO.NET数据服务框架的客户端程序。它使用了以下几种不同的方式(LINQ、ADO.NET数据服务查询选项、自定义的ADO.NET数据服务操作)来对ADO.NET数据服务服务端的多种数据源(ADO.NET 实体数据模型、LINQ To SQL 数据类、以及简单的内存数据)进行更新和查询。

VBASPNETFileUpload, VBASPNETLocalization
这两个是ASP.NET的sample。分别演示了ASP.NET中文件上传功能的制作,以及ASP.NET Globalization和Localization的功能。

CSTFSWorkItemObjectModel
CSTFSWorkItemObjectModel演示如何通过Team Explorer 2008的Object Model来访问TFS server。要运行这个sample,你需要确保你已安装了Team Explorer 2008,并且在sample的app.config里正确地配置了project name和TFS server URL。

ATLShellExtDragAndDropHandler, ATLShellExtInfotipHandler, ATLShellExtPropSheetHandler, ATLShellExtContextMenuHandler
这些都是Windows Shell Extension 相关的sample。分别演示了Drag and Drop Handler, Infotip Handler, PropertySheet Handler, Context Menu Handler的制作。不久我们还将推出Data handler, Drop handler, Icon handler, Thumbnail Image handler, Metadata handler, Column handler, Copy hook handler, Icon Overlay handler, Search handler, Namespace Extension的例子。敬请期待。

 

最后,如果您对新版的CodeFx有任何建议和反馈,请在此提出。谢谢!

posted @ 2009-07-30 23:39 Jialiang 阅读(1512) | 评论 (0)编辑 收藏

仅列出标题  下一页
Welcome to All-In-One Code Framework!