微软一站式示例代码库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