• C# WinForm开发系列 OpenSource Controls


        整理了一些在WinForm开发中可以使用的开源组件.(文章及相关代码搜集自网络,仅供学习参考,版权属于原作者! ).

    1. 仿office 2007的Ribbon风格面板(该控件模仿office 2007的Ribbon风格,显示操作面板。)

    2. .NET中最全功能的表格控件

    [翻译]

    Mathew Hall.著XPTable - .NET ListView meets Java's JTable


    [简介]

    由于项目需要,我需要定制一个ListView,它必须能够在列中插入图像、下拉框、可上下调整的数字、进度条等等。由于已经有了一个Java下的背景,我将简单地基于那个JTable封装。


    [功能]

    全定制可视化界面
    支持XP风格
    轻易添加再定制的控件
    可隐藏列
    行、列、单元可以被Disable
    每个单元、列可以有Tooltip
    等等……


    [XPTable]

    XPTable包含下面的组件:
    1. Table,
    2. ColumnModel 和它的 Columns,
    3. TableModel 和它的 Row 和 Cell,
    4. Renderer
    5. Editor

    3.OpenTheme一个开源的用户图形界面(GUI)工具包

    [翻译]

    weiqj.著OpenTheme : An open source graphic user interface (GUI) toolkit

    [简介]

    OpenTheme是一个基于XML的GUI工具包,它包括一系列基础类和WYSIWYG 编辑器。尽管,它最初的设计是用于全屏GUI的,不过完全适用Windows用户界面。

    另外,我给大家准备了一个完全的入门教程

    image

    4.一个XP和Vista风格的Outlook工具栏控件

    [翻译]
    Jan Geerinckx著Rich OutlookBar in XP and Vista style


    Outlook工具栏控件


    [开发环境]
    VB
    .NET 

    [简介]
    本文中的控件将实现一个XP和Vista风格的Outlook工具栏控件。

    [基本结构]

    控件中有三个类:

    OutlookBarButton类
    该类实现了单个的Button实例,其中绘图不包括在这里。
    基本成员如下:
    Text:如果按钮作为大的按钮显示的时候,文字会显示在上面。如果,按钮显示在最下方,作为小的按钮显示,这些文字会作为Tooltip显示。
    Visible:指示按钮是否可见,可以在运行过程中,动态地设置。
    Allowed:当设置为False时,这个按钮不可见。在运行的时候,你不可以访问它,可以阻止特定的用户只允许访问特定按钮。
    Image:显示在按钮上的图片。最好是24x24或更大的图标。
    Rectangle:只在assembly可设。

    OutlookBarButtonCollection类

    它继承于CollectionBase,是上述Button的集合。

    5.使用Vista风格的控件.NET 2.0

    翻译

    Pedro M. C. Cardoso著Vista Controls

    简介

    Vista控件集(Vista Controls)是一个于微软Windows Vista操作系统下提供新样式控件的一个库。

    如果你在.NET 2.0的应用程序中使用了 System.Windows.Forms程序集中的树状图Treeview,列表视图Listview, 打开文件对话框OpenFileDialog, 保存文件对话框SaveFileDialog 和目录浏览对话框FolderBrowserDialog,当你的程序运行于Vista下面的时候,你会发现你的程序风格并没有任何变化,并没有自动调用新的Vista界面风格,还是以前的Windows XP的风格。

    在Vista Controls中,你将发现有五个代替的类,它们将使得运行在Vista下面的程序看上去是Vista的样子,而如果你在早期的Windows系统中使用这些程序时,还是以前的风格。这就给你减轻了很大的工作量,很容易你的程序就可以同时适应Vista和以前版本Windows了。

    另外,Vista控件集包括了一个新加入Vista的控件:Command Link。因为这个控件在早期的Windows中并不存在,所以当程序运行在这些Windows系统中时,它会模仿Vista风格。

    控件

    常规对话框

    打开文件,保存文件和打开目录对话框

     

    6.面板控件库 XPanderControls


    面板控件库 XPanderControls
    作者: Uwe Eichkorn
    翻译: [yn]Yuxiang

    本文介绍一个可对子控件分组的可扩展面板控件库的使用。
    C# (C# 2.0)
    Windows (Win2K, WinXP, Vista), .NET (.NET 2.0)
    Win32, VS (VS2005)
    Dev
    发表日期2007-4-13
    更新日期2007-9-29 

    下载源代码和演示文件(http://www.codeproject.com/useritems/XPanderControls/xpandercontrols.zip) - 177.8 KB

     原文:XPanderControls

    译者注:(另外,限于篇幅,译文的大部分插图没有贴上来,请下载译文查看)
    (1)在解压缩源代码后,建议把源码文件的只读属性取消,避免在保存时出现警告对话框
    (2)在第一次打开解决方案后,需要先生成控件库 BSE.Windows.Forms.dll,否则演示窗体 Form1.cs 不能被打开
    (3)在启动调试前,请把 BSE.Windows.Test 项目设置为启动项目
    (4)
    请注意:在使用 RightToLeft 功能时,在运行时刻,会产生错误(imageList2 控件初始,请参阅下面的相关说明),请关注作者的更新

    简介

    XPander 控件库提供了把多个用户控件放置在单个容器中的机制。可以随意地显示或隐藏它。 Xpander 控件追随 MS Outlook 的视觉风格。所有控件都支持可视化设计器、智能标记和 RightToLeft 功能。面板的使用与 toolstripenders 相关联,可形成有趣的视觉效果。

    面板风格(Panel styles)

    在演示项目中,面板的风格可以通过在 tooltrip 中的组合框进行更改。

    水溶效果(Aqua effects)

    Office2007 效果(Office2007 effects)

    在可视化设计器中,面板颜色和属性都是可以定制和改变的。

     

    当 RightToLeft 属性值被设置为 RightToLeft.Yes 时,控件元素的水平对齐方式就改变为从右向左。

    7.Office 2007 Ribbon 风格的按钮和菜单[转载]

    翻译

    Juan Pablo G.C.著Improved and Recoded RibbonMenuButton

    简介

    首先,感谢大家。我非常感谢大家对本文的努力给与了高度的评价。我记得当我16岁的那年,我见到了各种各样的软件、应用程序和游戏,而对于我来说,当时根本不可能达到或开发这样的软件。然而,从此以后,我学习了许多,如今,我已经能够很轻易地完成这样的软件。而且,如果我能够帮助谁实现绚丽的应用程序,我决定他们可以自由地使用我的代码。

    背景

    此前,我一直在考虑如何做一个全定制的按钮,以及改变RGB元素究竟有多么难。我决定做一个能够提供很多操作颜色的类RibbonColor。如果你运行一下demo程序,并移动Hue,SatBrightnessTrackBar,就会很快明白我上面说的。我必须承认接近70%的RibbonControl链接库已经完成。然而,当人们迫切地希望使用改善过的代码,并告诉我我没有对我的代码作很多解释的时候,我决定把自己当作哑巴。:)

    8.C# WinForm开发系列 - Grid Controls

    9.C# WinForm开发系列 - 文章索引(其它一系列控件)

    10.免费用户界面控件 Krypton Toolkit 简介

    Krypton  
    简介

    Krypton 2.7.1

     Krypton 套件 包含了让开发人员轻松创建专业外观应用程序的用户界面组件。你可以使用内置的模板来完成与工业标准应用程序相同的外观,诸如 Microsoft Office 2007 。你也可以选择构建自己的定制模板来创建十分独特的用户界面。  Krypton 套件 由三个产品组成: Krypton ToolkitKrypton Ribbon 和 Krypton Navigator。(译者注:在安装 Krypton 套件 后,包含了程序集、帮助文档、模板、示例及其源代码,并把程序集中的组件添加到 Visual Studio 2005(或2008)开发环境的工具箱中,同时添加 Krypton Form Project、Krypton ToolStrip Form Project 和 Krypton Ribbon Form Project 项目模板。 Krypton 套件 提供了 Office 2007 蓝色、Office 2007 银色、Office 2007 黑色、Office 2003 、System 等配色模板,易于与 .NET 的工具栏、菜单栏、状态栏等控件组合使用)

    下载地址(下载解压缩后只需要安装 KryptonToolkit271.msi): windowsclient.net 上的下载

    或者: http://www.componentfactory.com/downloads/KryptonToolkit271.zip


    Krypton Toolkit

    Krypton Toolkit 提供了一组免费的基础用户界面组件。你可以在自己的产品中分发已签名的 Krypton Toolkit 程序集 ,无需付费或经过许可。如果你想查看或修改源代码,你可以在 Component Factory网站上购买,请查看页末的链接。

    示例界面

    11.仿XP资源管理器中的可伸缩面板控件

     

    [翻译]
    Collapsible Panel control

    该控件拥有类似Windows XP 的资源浏览器中左边的可伸缩面板的功能。


    [简介]

    该控件可以包括多个视图,当你点击面板的标题栏时,它可以自动伸缩下面的面板。你可以自己设置它的标题栏图标、定制伸展/收缩按钮。另外,有几种不同的类型标志,用于定制面板的界面和行为。

    当你点击一个面板的时候,你将在主窗口收到WM_COMMAND消息的通知,它会告诉你面板真被伸展还是收缩。当然,你也可以设定不让它自动缩放。

    控件还允许自绘图像(ownerdrawn),你可以捕获WM_DRAWITEM消息,然后绘制自己的按钮图像。

    由于性能的考虑,控件内部把按钮图像绘制在一个位图中,这样就可以保证迅速地把它显示到界面上。为了防止闪烁,在绘制过程中使用了memory DC

    VC++可伸缩面板控件

    12.一个专业的 Ribbon 控件

     

    作者: Jose M. Menendez Poó
    翻译: Yuxiang
     发表日期2008-5-8
    更新日期2008-5-29

    简介

    由于在网站上缺少好的免费的 Ribbon 控件,我决定自己编写一个。我分析了以前(包括那些在 CodeProject 上) ribbon 控件的工作机制。很不幸,大多数已有的控件只是差劲的尝试。为什么这样说?因为它们有些缺少好的绘制,有些缺少改变大小的功能,有些几乎是什么都缺。当然,已开发的好的 Ribbon 控件需要付费。这个 ribbon 是免费的。

    为什么不使用 WPF?主要的原因是我需要把 Ribbon 添加到已有的 WinForms 应用程序中。依我看来,这不是“不”使用WPF,而是“还没有”使用。无论如何,你可以在WPF 中承载(host) 一个 WinForms 控件(参阅 http://msdn.microsoft.com/en-us/library/ms750944.aspx)。

    一些设计目标

    实现 — 此 ribbon 包含在一个 Control 窗口中,它内部的每个元素作为控件内部的一系列 bounds 管理,就像 ToolStrip 控件那样。 尽管从 ribboon 的内部代码来管理是困难的,但是这是让它保持最佳实现 ribbon 一种方式。 相信我,下载演示程序,运行它并改变窗体的大小。它完成得很漂亮。

    与 Office ribbon 的一致性 — 我曾经读过有关 Jakob Nielsen 讲述的大多数用户更喜欢所使用的程序看起来像 Word, Excel 或 Powerpoint。这相关明显,因为人们每天都使用这些软件。视觉效果与 office 的 ribbon 一致是非常重要的,因为人们已经知道期待什么,并且那是有益的用法。 我尝试让每个 Ribbon 中的元素的外观及行为严格地与 Office 的 ribbon 一致。

    易于为程序员使用 — 组件命名与大多数 WinForms 命名系统一致, 更多的使用 ToolStrip 元素。为类似的元素的属性,事件和方法命名就像在 ToolStrip 的工艺项那样。

    设计时刻支持 — 我将会添加越来越多的设计时刻支持,因此你可以在设计器中 100% 地管理这个 ribbon。

    当我发现 bugs 或者你乐于让我知道它们,我将会提供 更新 和 修正 。

    使用 Ribbon

    此 ribbon 位于 System.Windows.Forms 命名空间,就像其它控件,我想使用诸如  MyCoolFirm.MyCoolNameSpace.MyCoolSubNameSpace 等的控件命名方式是让人不爽的(请仅为商业对象进行这样的命名)。

    你可以添加对已经编译的 dll (System.Windows.Forms.Ribbon.dll )引用,或者你可以直接复制源码文件到你的项目文件夹中。现在代码已设计好,你可以只复制源码文件,不需要任何额外的资源。

    快速指南

    此 ribbon 主要由三种元素组成:标签(tabs),标签上的面板(panels on the tabs,其他开发人员称它们为组),以及在面板内部的项目(items inside the panels)。

    这些元素通过 RibbonTab, RibbonPanel 和 RibbonItem 类型进行表现。 RibbonItem 是一个为任何承载于 RibbonPanel 或 RibbonDropDown 之上的项提供基本功能的抽象类。

    你可以使用 Ribbon 的智能标记来添加标签,可以通过选定标签并调用在属性表底部的“Add Panel(添加面板)”动作来添加标签的面板。

    Ribbon 上的元素依据可用的 ribbon 空间来调整大小。这是 ribbon 的关键特征。通过调整大小,它试图把所有可用的命令都显示在屏幕上,而不是在溢出的按钮上隐藏它们(就像旧式的 ToolStrip 那样)。

    我使用三种尺寸来处理:Large(大), Medium(中等) 和 Compact(紧凑)。一个附加的尺寸用于面板,因为面板可以被折叠,然后它们采用 Overflow 大小模式。

    13.甘特图绘制组件

     

    翻译
    Adagio.81. 著Gantt Chart

    简介
    该组件可以使你简单地把甘特图加入你的应用程序。你只需要3行代码就可以做到了。

    这个甘特图(Gantt Chart)包括下面的特征
    1. 列的宽度自动根据组件的宽度和起始结束时间调整,如果日期之间多于2天,控件只会显示日期,否则还会显示时间。
    2. 你可以给每个bar设置颜色
    3. 自动显示滚动条
    4. 当鼠标停到上面时,自动显示信息
    5. 很容易地使用多行提示框文本

    http://www.cnblogs.com/peterzb/archive/2009/06/21/1507880.html

  • 相关阅读:
    pm3
    算法交易系列研究之一
    CDS究竟是个什么鬼?它直接导致了次贷危机?
    源特定组播(SSM:Source Specific Multicast)
    投资交易系统常用表
    交易系统解析(六)前台报盘应用设计要点
    人物
    句子
    康德拉季耶夫周期
    非标
  • 原文地址:https://www.cnblogs.com/blosaa/p/2842974.html
Copyright © 2020-2023  润新知