Visual Basic 8 (2005)Windows VistaWindows 2003Visual Studio 2005Windows 2000设计/图形Windows XP.NET 2.0Windows Forms中级开发Visual StudioWindows.NETVisual BasicC#
一种添加 Office 2007 风格功能区面板的简单方法






4.93/5 (238投票s)
RibbonPanel 的 GNU 代码,免费的个人和非营利使用软件,其他用途请联系我

引言
一图胜千言,最后的效果非常可爱。在解释如何将其添加到您的应用程序之前,我将向您展示主要功能。
RibbonStyle 命名空间的功能
RibbonButton
:Transparency
(透明度),Autosizable
(可自动调整大小)图像,AutoForecolor
(自动前景色),AutoInfoForm
(自动信息窗体)(请参阅InfoForm
、OnBackImage
和ClickBackImage
)。TabPanel
:Transparency
(透明度),BaseColor
(基准颜色),BaseColorOn
(高亮显示时的颜色),Caption
(标题),Resizable
(可调整大小)。TabStrip
:内部包含Tab
:具有Autowidth
(自动宽度)、BaseColor
(基准颜色)、HaloColor
(光晕颜色)和Enable
(启用)功能。TabStripProffesionalRenderer
:控制Tab
的样式(难以处理)TabStripPage
:BaseColor
(基准颜色),继承自我的RibbonPanel
。TabPageSwitcher
:控制Tab
和TabStripPage
之间的链接。具有tabcontrol
的Design
(设计)功能。
InfoForm
(带阴影):根据标题、注释和图像信息进行显示。RibbonButton
的属性会自行调整大小。
使用控件
希望您能理解这些功能,接下来的内容对您来说会很容易。
- 创建一个新的 C# 应用程序。
- 将所有类添加到您的应用程序中。
- 现在重新生成项目。
- 在工具箱中,您将看到许多新控件。
- 现在将一个
Windows.Forms.Panel
添加到Form
中,并将其停靠在顶部,根据需要进行调整。 - 将
TabStrip
添加到Panel
内部。 - 使用
TabStripPageSwitcher
,您可以添加TabStrip
。如果您发现点击它很困难,可以在属性窗口中点击。 - 使用
TabStrip
和一些tab
以及TabStrip
页面,在TabStripPages
中添加TabPanels
(请注意TabPanel
的BackColor.Transparent
(透明背景色))。我建议您将几个添加到窗体中,然后复制粘贴到tabStripPage
中(稍后可以轻松地停靠它们)。添加Tabpanel
后,将它们停靠在左侧。 - 现在将
RibbonButton
添加到TabPanel
中,调整其大小和图像,根据需要复制粘贴并更改图像。不要担心文本颜色,它们将在运行时处理。 - 如果一切正常,运行后您将看到类似这样的效果(Azure 风格)。
创建自定义样式
正如您在演示 zip 文件中看到的,可以在运行时更改颜色。让我们分析一下代码。如果您查看 Form1
代码,会有一个 SetStyle
方法。
public void SetStyle(string Name)
{
Color HaloColor = Color.White;
switch (Name)
{
case "Dark":
this.BackColor = Color.FromArgb(88,77,69);
HaloColor = Color.FromArgb(200,200,200);
SetBase(87,61,53,HaloColor);
break;...
您会发现只需要更改三种颜色!希望您觉得它很有用。其余的都是颜色组件的加减法。因此,为避免颜色错误,我建议您查看我的另一篇文章,其中有一个颜色选择器,仅用于 basecolor
,HaloColor
是标签上的亮度,而 Backcolor
是窗体的颜色。
关注点
我必须说,在 tabstrip
部分,我使用了 CustomTabstrip 的基础。我对 tabcontrol
感到厌烦,在寻找解决方案后,最好的方法是从 ToolStrip
继承。
该项目包含大量代码,我付出了很多努力编写。如果您需要任何部分的解释,请随时提问。这是 .NET 2.0 代码,我将其放在 Windows 2000 机器上,在 XP 和 Vista 上运行效果都非常好。
为了设计出更好的软件,请为您认为有价值的代码投票,如果您投票了,请告诉我优缺点。
历史
- 1.0:控件库的第一个版本。