<?xml version="1.0"?><?xml-stylesheet type="text/xsl" href="/rss.xsl"?><rss version="2.0"><channel><title>Ribbon Wiki &amp; Documentation Rss Feed</title><link>http://www.codeplex.com/Ribbon/Wiki/View.aspx?title=Home</link><description>Ribbon Wiki Rss Description</description><item><title>Updated Wiki: How to Obtain DLL for .NET Framework 3.5 &amp; 4.0</title><link>http://ribbon.codeplex.com/wikipage?title=How to Obtain DLL for .NET Framework 3.5 &amp; 4.0&amp;version=19</link><description>&lt;div class="wikidoc"&gt;&lt;h1&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/h1&gt;
&lt;h2&gt;The content of this page is remain for reference. You can get the precompile (new version) from new site. Please visit &lt;a href="http://officeribbon.codeplex.com"&gt;http://officeribbon.codeplex.com&lt;/a&gt;.&lt;/h2&gt;
You can either convert the original source project of this ribbon from .NET Framework 2.0 to 3.5 or 4.0, or create a blank class project of .NET Framework 3.5/4.0.&lt;br /&gt;&lt;br /&gt;If you choose to create a blank class, add all .cs files from the source code of System.Forms.Ribbon into your class, and add additional reference of
&lt;ul&gt;&lt;li&gt;&lt;b&gt;System.Design&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;System.Drawing&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;System.Windows.Forms&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;You have to modify &lt;b&gt;GlobalHook.cs&lt;/b&gt;. Refer Solution 1 explained here: &lt;a href="http://ribbon.codeplex.com/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0"&gt;Ribbon is slowing down application&lt;/a&gt;
&lt;ul&gt;&lt;li&gt;Find &lt;b&gt;private void InstallHook()&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;del&gt;Add a &lt;b&gt;return&lt;/b&gt; statement at the beginning of the method so nothing is done.&lt;/del&gt; (These is a better fix than this).&lt;/li&gt;
&lt;li&gt;Please follow &lt;b&gt;Solution 1&lt;/b&gt; at here: &lt;a href="http://ribbon.codeplex.com/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0"&gt;Ribbon is slowing down application&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;&lt;br /&gt;Next, please note that, at your new WinForm project, after the first build, the target framework will automatically switched to &lt;b&gt;Client Profile&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;For example, if you are building a .NET Framework 4.0, Visual Studio will initially switch your WinForm project to &lt;u&gt;&lt;b&gt;.NET Framework 4.0 Client Profile&lt;/b&gt;&lt;/u&gt;. You have to manually switched it back to &lt;b&gt;.NET Framework 4.0&lt;/b&gt;. This is because &lt;b&gt;Client Profile&lt;/b&gt; does not support &lt;b&gt;System.Design&lt;/b&gt; which required by the Ribbon to build and run. System.Design is used by Ribbon internally.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=369864" alt="dotnet4.png" title="dotnet4.png" /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Thu, 10 Jan 2013 08:51:37 GMT</pubDate><guid isPermaLink="false">Updated Wiki: How to Obtain DLL for .NET Framework 3.5 &amp; 4.0 20130110085137A</guid></item><item><title>Updated Wiki: Home</title><link>http://ribbon.codeplex.com/wikipage?version=14</link><description>&lt;div class="wikidoc"&gt;&lt;b&gt;Project Description&lt;/b&gt;&lt;br /&gt;A project on an Office-like Ribbon control.&lt;br /&gt;
&lt;h2&gt;The development/support of this project is continued at new site, please visit: &lt;a href="http://officeribbon.codeplex.com"&gt;http://officeribbon.codeplex.com&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;Orb and QuickAccess toolbar now on Non-Client Area!&lt;/h2&gt;
&lt;b&gt;Important&lt;/b&gt;: Read the guide for &lt;a href="http://www.menendezpoo.com/a.php?h=a49fa2cc7a3523"&gt;embedding the ribbon on the non-client area&lt;/a&gt;.&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;This is a Microsoft Office 2007 Ribbon Bar - like control for .NET, as all of the code in &lt;a href="http:www.menendezpoo.com"&gt;my site&lt;/a&gt;, is &lt;b&gt;free and open source&lt;/b&gt;. At the time this is being written, is yet the best ribbon available for free.&lt;br /&gt;&lt;br /&gt;Please refer to my site/blog &lt;a href="http://www.menendezpoo.com"&gt;www.menendezpoo.com&lt;/a&gt; for more on usage, development and news about this project&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=67158" alt="ribbon_0.4.001.jpg" title="ribbon_0.4.001.jpg" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=67159" alt="ribbon_0.4.005.jpg" title="ribbon_0.4.005.jpg" /&gt;&lt;br /&gt;
&lt;h1&gt;Introduction&lt;/h1&gt;
Because of the lack of good free Ribbon controls on the web, I decided to write one myself. I&amp;#39;ve analyzed previous work on ribbon-controls. Unfortunately, most existent controls are merely bad tries. Why? well, some lack nice rendering, some lack resizing features, some lack almost everything. Of course, well developed Ribbon controls are available at a price. &lt;b&gt;This ribbon is free&lt;/b&gt;.&lt;br /&gt;
&lt;h2&gt;Some of the design goals&lt;/h2&gt;
&lt;b&gt;Performance&lt;/b&gt; - This ribbon is contained on a Control window, and every element inside of it is managed as a bunch of bounds inside the control, just as the ToolStrip control does. Altough this is difficult to manage from the ribboon&amp;#39;s inside code, this is a way to keep it at the best performed ribbon. Believe me, download the demo, run it and resize the window. It peforms beautifully.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Consistency with Office&amp;#39;s ribbon&lt;/b&gt; - I read once about Jakob Nielsen saying that most users prefer the programs they use look just like word, excel or powerpoint. This is quite obvious, because people use this software every day. Providing visual consistency with the office&amp;#39;s ribbon is very important because people already know what to expect from a ribbon-like interface. I&amp;#39;ve tried to every element in the ribbon look and behave exactly like it does in the Office&amp;#39;s ribbon.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Ease of use for programmers&lt;/b&gt; - The naming of components is consistent with most WinForms names, even more with the ToolStrip elements. Property, event and method names for similar elements are named just like in the ToolStrip technology items.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Designer support&lt;/b&gt; - I will be adding more and more designer support so you can manage the ribbon 100% from the designer.&lt;br /&gt;&lt;br /&gt;
&lt;h1&gt;Using the Ribbon&lt;/h1&gt;
The ribbon is located in the System.Windows.Forms namespace, just as every other control, I think it&amp;#39;s annoying to use controls named as MyCoolFirm.MyCoolNameSpace.MyCoolSubNameSpace, and so on (Please do that only for bussiness objects).&lt;br /&gt;&lt;br /&gt;You can add a reference to the compiled dll: System.Windows.Forms.Ribbon.dll or you can directly copy the source files to a folder on your project. The code is currently designed so you can just copy the source files, it doesn&amp;#39;t need any extra resources.&lt;br /&gt;
&lt;h1&gt;Hands on: Quick Guide&lt;/h1&gt;The ribbon is composed mainly by three kind of elements, the tabs, the panels on the tabs (other developers call them groups) and the items inside the panels.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=34080" alt="ribbontab.gif" title="ribbontab.gif" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=34076" alt="ribbonpanel.gif" title="ribbonpanel.gif" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=34075" alt="ribbonitems.gif" title="ribbonitems.gif" /&gt;&lt;br /&gt;&lt;br /&gt;These elements are represented by RibbonTab, RibbonPanel and RibbonItem types. RibbonItem is an abstract class that provides basic functionality for any item hosted on a RibbonPanel or on a RibbonDropDown.&lt;br /&gt;&lt;br /&gt;You can add tabs from the smart tag of the Ribbon, you can add panels to the tab by selecting the tab and calling the &amp;quot;AddPanel&amp;quot; verb on the bottom part of the property grid.&lt;br /&gt;&lt;br /&gt;The elements on the ribbon are resized according to the available space for the ribbon. This is a key feature of the ribbon. It tries to bring all possible commands to the screen by resizing them, instead of hiding them on an overflow button like the old ToolStrip.&lt;br /&gt;&lt;br /&gt;I treat this as three kinds of sizes: Large, Medium and Compact. An additional size is used for panels because panels can be collapsed, and then they will adopt the Overflow size.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=34077" alt="ribbonpanelsizes.gif" title="ribbonpanelsizes.gif" /&gt;&lt;br /&gt;&lt;br /&gt;Note: There&amp;#39;s no way to directly affect the bounds of the elements on the ribbon, the size will always be determined the layout engine inside the ribbon. In fact, the layout depends on two factors: the available horizontal space on the ribbon and the size modes on the items.&lt;br /&gt;&lt;br /&gt;If there&amp;#39;s no available space on the ribbon for a panel, panel will be collapsed. If all panels are collapsed and space is not available yet, a scroll button will appear so user can scroll the panels horizontally.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=34079" alt="ribbonsizes.gif" title="ribbonsizes.gif" /&gt;&lt;br /&gt;
&lt;h2&gt;Buttons&lt;/h2&gt;There&amp;#39;s only one type of button: RibbonButton. It can be set to three styles:&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=34072" alt="ribbonbuttonstyles.gif" title="ribbonbuttonstyles.gif" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;RibbonButton adds the SmallImage property so you can set the image shown when button is in medium or compact mode. Although it&amp;#39;s not restricted by functionality, it&amp;#39;s highly recommended to use just 32 x 32 pixels for Image property and 16 x 16 for SmallImage property. Results are unexpected when sizes are different.&lt;br /&gt;&lt;br /&gt;Note: Use the DropDownItems property to add items to the dropdown of the button.&lt;br /&gt;&lt;br /&gt;The appearance of the buttons vary through size modes.&lt;br /&gt;
&lt;h2&gt;ItemGroups&lt;/h2&gt;
The buttons like those on the Font and Paragraph panels are RibbonButton buttons hosted inside a RibbonItemGroup group.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=34074" alt="ribbonitemgroup.gif" title="ribbonitemgroup.gif" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;Items added to RibbonItemGroup will always be measured and treated in compact size mode.&lt;br /&gt;&lt;br /&gt;Important: If a RibbonPanel will host RibbonItemGroup objects, you must set the RibbonPanel.FlowsTo property to Right. The layout on those items are treated differently because groups flow as rows.&lt;br /&gt;
&lt;h2&gt;Lists&lt;/h2&gt;
Lists are represented by RibbonButtonList and provide two collections: Buttons and DropDownItems. This is because the list can be scrolled on the ribbon and can dropdown more items. The dropdown of list supports resizing by a grip on the south east corner.&lt;br /&gt;&lt;br /&gt;If you want the buttons on the list to be shown on the dropdown, you will have to explicitly add another list with those buttons to the DropDownItems property.&lt;br /&gt;
&lt;h2&gt;Separators&lt;/h2&gt;
Separators are represented by RibbonButtonSeparator and provides the well known separator functionality. When in a dropdown, separators can actually contain text. When they contain text, they will be rendered differently.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=34073" alt="ribbondropdown.gif" title="ribbondropdown.gif" /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Thu, 10 Jan 2013 08:49:09 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Home 20130110084909A</guid></item><item><title>Updated Wiki: Ribbon is slowing down application</title><link>http://ribbon.codeplex.com/wikipage?title=Ribbon is slowing down application&amp;version=14</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Ribbon is slowing down application&lt;/h1&gt;
&lt;p&gt;Disscusion: &lt;a href="http://ribbon.codeplex.com/discussions/81454"&gt;http://ribbon.codeplex.com/discussions/81454&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2&gt;Note: The bugs stated in this page have been solved in new version of ribbon. You can get it at new site, here:&amp;nbsp;&lt;a href="http://officeribbon.codeplex.com/"&gt;http://officeribbon.codeplex.com/&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;
&lt;hr&gt;
Solution 1:&lt;/h2&gt;
&lt;p&gt;GlobalHook.cs Fixed Shared by han6man*&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Download Source Code. &lt;/li&gt;&lt;li&gt;Find &lt;strong&gt;GlobalHook.cs&lt;/strong&gt; &lt;/li&gt;&lt;li&gt;Find &lt;strong&gt;private void InstallHook()&lt;/strong&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://www.codeproject.com/Messages/4020406/Re-Here-is-a-Solution-that-works-for-2-0-and-4-0-n.aspx"&gt;http://www.codeproject.com/Messages/4020406/Re-Here-is-a-Solution-that-works-for-2-0-and-4-0-n.aspx&lt;/a&gt;&lt;/p&gt;
&lt;pre&gt;using System.Diagnostics;
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre&gt;/// &amp;lt;summary&amp;gt;
        /// Installs the actual unsafe hook
        /// &amp;lt;/summary&amp;gt;
        private void InstallHook()
        {
            /// Error check
            if (Handle != 0) throw new Exception(&amp;quot;Hook is already installed&amp;quot;);
 
            #region htype
            int htype = 0;
 
            switch (HookType)
            {
                case HookTypes.Mouse:
                    htype = WinApi.WH_MOUSE_LL;
                    break;
                case HookTypes.Keyboard:
                    htype = WinApi.WH_KEYBOARD_LL;
                    break;
                default:
                    throw new Exception(&amp;quot;HookType is not supported&amp;quot;);
            }
            #endregion
 
            /// Delegate to recieve message
            _HookProc = new HookProcCallBack(HookProc);
 
            /// Hook
            //_hHook = WinApi.SetWindowsHookEx(htype, _HookProc, Marshal.GetHINSTANCE(Assembly.GetExecutingAssembly().GetModules()[0]), 0);

            _hHook = WinApi.SetWindowsHookEx(htype, _HookProc, GetCurrentModule().BaseAddress, 0); // FIX
            if (_hHook == 0) _hHook = WinApi.SetWindowsHookEx(htype, _HookProc, IntPtr.Zero, 0);  // FIX

            /// Error check
            if (Handle == 0) throw new Win32Exception(Marshal.GetLastWin32Error());
            
 
        }
&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Updated: 02 Jan 2013&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;static&lt;/span&gt; ProcessModule GetCurrentModule()
{
    &lt;span style="color:green"&gt;// need instance handle to module to create a system-wide hook&lt;/span&gt;
    Module[] list = System.Reflection.Assembly.GetExecutingAssembly().GetModules();
    System.Diagnostics.Debug.Assert(list != &lt;span style="color:blue"&gt;null&lt;/span&gt; &amp;amp;&amp;amp; list.Length &amp;gt; 0);
    &lt;span style="color:green"&gt;//System.Reflection.Assembly.LoadFrom(&amp;quot;System.Windows.Forms.Ribbon.dll&amp;quot;).ImageRuntimeVersion;&lt;/span&gt;
    &lt;span style="color:blue"&gt;var&lt;/span&gt; currentProcess = Process.GetCurrentProcess();
    &lt;span style="color:blue"&gt;var&lt;/span&gt; modules = currentProcess.Modules;
    ProcessModule mod = &lt;span style="color:blue"&gt;null&lt;/span&gt;;

    &lt;span style="color:blue"&gt;#region&lt;/span&gt;
    &lt;span style="color:blue"&gt;if&lt;/span&gt; (Environment.Version.Major &amp;lt; 3)
        &lt;span style="color:blue"&gt;foreach&lt;/span&gt; (ProcessModule m &lt;span style="color:blue"&gt;in&lt;/span&gt; modules)
        {
            &lt;span style="color:blue"&gt;if&lt;/span&gt; (m.ModuleName == list[0].Name)
            {
                mod = m;
                &lt;span style="color:blue"&gt;return&lt;/span&gt; mod;
            }
        }
    &lt;span style="color:blue"&gt;else&lt;/span&gt; &lt;span style="color:blue"&gt;if&lt;/span&gt; (mod == &lt;span style="color:blue"&gt;null&lt;/span&gt;) mod = Process.GetCurrentProcess().MainModule;

    &lt;span style="color:blue"&gt;return&lt;/span&gt; mod;

    &lt;span style="color:blue"&gt;#endregion&lt;/span&gt;
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h2&gt;Solution 2:&lt;/h2&gt;
&lt;p&gt;This fix will enable you to use with MDI Client, but might experience other ribbon controls (such as dropdownlist) to refresh incorrectly.&lt;br&gt;
(shared by &lt;a href="http://www.codeplex.com/site/users/view/javierdd"&gt;javierdd&lt;/a&gt;)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Download the source code. &lt;/li&gt;&lt;li&gt;Find &lt;strong&gt;GlobalHook.cs&lt;/strong&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;img title="01.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366217" alt="01.png"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Find &lt;strong&gt;private void InstallHook()&lt;/strong&gt; &lt;/li&gt;&lt;li&gt;Add a &lt;strong&gt;return&lt;/strong&gt; statement at the beggining of the method so nothing is done
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;img title="02.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366218" alt="02.png"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2&gt;Solution 3:&lt;/h2&gt;
&lt;p&gt;(shared by &lt;a href="http://www.codeplex.com/site/users/view/giague"&gt;giague&lt;/a&gt;)&lt;br&gt;
&lt;br&gt;
In Ribbon.cs find&lt;/p&gt;
&lt;pre&gt;protected override void WndProc(ref Message m)
&lt;/pre&gt;
&lt;p&gt;&lt;br&gt;
then sobstitute the proc with this one including the variable declaration&lt;br&gt;
&lt;br&gt;
private bool MouseOnCaption = false;&lt;br&gt;
&lt;br&gt;
It allow Dobule Click on caption bar and drag the from when in normal mode;&lt;/p&gt;
&lt;pre&gt;private bool MouseOnCaption = false;
protected override void WndProc(ref Message m)
{
    //These are constant to send Drag instruction to base.WndProc;
    const int HT_CAPTION = 0x2; const int WM_NCLBUTTONDOWN = 0xa1;
    bool bypassed = false;

    if (WinApi.IsWindows &amp;amp;&amp;amp; (ActualBorderMode == RibbonWindowMode.NonClientAreaGlass || ActualBorderMode == RibbonWindowMode.NonClientAreaCustomDrawn))
    {
        if (m.Msg == WinApi.WM_NCHITTEST)
        {
            Form f = FindForm();
            Rectangle caption;
            if (RightToLeft == RightToLeft.No)
            {
                int captionLeft = QuickAcessToolbar.Visible ? QuickAcessToolbar.Bounds.Right : OrbBounds.Right;
                if (QuickAcessToolbar.Visible &amp;amp;&amp;amp; QuickAcessToolbar.DropDownButtonVisible) captionLeft = QuickAcessToolbar.DropDownButton.Bounds.Right;
                caption = Rectangle.FromLTRB(captionLeft, 0, Width, CaptionBarSize);
            }
            else
            {
                int captionRight = QuickAcessToolbar.Visible ? QuickAcessToolbar.Bounds.Left : OrbBounds.Left;
                if (QuickAcessToolbar.Visible &amp;amp;&amp;amp; QuickAcessToolbar.DropDownButtonVisible) captionRight = QuickAcessToolbar.DropDownButton.Bounds.Left;
                caption = Rectangle.FromLTRB(0, 0, captionRight, CaptionBarSize);
            }

            Point screenPoint = new Point(WinApi.LoWord((int)m.LParam), WinApi.HiWord((int)m.LParam));
            Point ribbonPoint = PointToClient(screenPoint);
            bool onCaptionButtons = false;

            if (CaptionButtonsVisible)
            {
                onCaptionButtons = CloseButton.Bounds.Contains(ribbonPoint) ||
                MinimizeButton.Bounds.Contains(ribbonPoint) ||
                MaximizeRestoreButton.Bounds.Contains(ribbonPoint);
            }
            //Detect if mouse is on caption andalso not on CaptionButtons
            MouseOnCaption = (!onCaptionButtons &amp;amp;&amp;amp; RectangleToScreen(caption).Contains(screenPoint));
        }
        if (MouseOnCaption)
        {
            if (m.Msg == WinApi.WM_LBUTTONDBLCLK)
            {
                //If Double Click on caption change FormWindowsState
                Form f = FindForm();
                f.WindowState = f.WindowState == FormWindowState.Normal ? FormWindowState.Maximized : FormWindowState.Normal;
                bypassed = true;
            }
            if (m.Msg == WinApi.WM_LBUTTONDOWN)
            {
                //If mouse left button is down on caption create and send message to start drag.
                Form f = FindForm();
                Message mDrag = new Message();
                mDrag.HWnd = f.Handle;
                mDrag.Msg = WM_NCLBUTTONDOWN;
                mDrag.WParam = new IntPtr(HT_CAPTION);
                mDrag.LParam = IntPtr.Zero;
                base.WndProc(ref mDrag);
            }
        }

    }

    if (!bypassed)
    {
        base.WndProc(ref m);
    }
}
&lt;/pre&gt;
&lt;p&gt;GlobalHook.cs&lt;/p&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Thu, 03 Jan 2013 14:46:35 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Ribbon is slowing down application 20130103024635P</guid></item><item><title>Updated Wiki: Documentation</title><link>http://ribbon.codeplex.com/documentation?version=54</link><description>&lt;div class="wikidoc"&gt;
&lt;h2&gt;Note: You can find the latest released version of ribbon at new site:&amp;nbsp;&lt;a href="http://officeribbon.codeplex.com/"&gt;http://officeribbon.codeplex.com&lt;/a&gt;&lt;/h2&gt;
&lt;h2&gt;.&lt;/h2&gt;
&lt;h2&gt;Content:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;How to Use This Ribbon Control (This page)
&lt;ul&gt;
&lt;li&gt;Cautious while using with &lt;strong&gt;Visual Studio 2010&lt;/strong&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;How to(s)
&lt;ul&gt;
&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Apply%20Keyboard%20Shortcuts&amp;referringTitle=Documentation"&gt;How to Apply Keyboard Shortcuts&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Display%20Tool%20Tip&amp;referringTitle=Documentation"&gt;How to Display Tool Tip&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=Programmatically%20Add%20RibbonButtons%20Into%20Ribbon&amp;referringTitle=Documentation"&gt;Programmatically Add RibbonButtons Into Ribbon&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Make%20a%20New%20Theme%2c%20Skin%20for%20this%20Ribbon%20Programmatically&amp;referringTitle=Documentation"&gt;How to Make a New Theme, Skin for this Ribbon Programmatically&lt;/a&gt; (Change color of each elements)
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Troubleshooting/Bugs Fix
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GloboHook.cs&lt;/strong&gt; Fix/Exceptions &lt;a href="/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;
Ribbon is slowing down application&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=Using%20Ribbon%20wtih%20MDI%20%28Multi%20Document%20Interface%29&amp;referringTitle=Documentation"&gt;Using Ribbon wtih MDI (Multi Document Interface)&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Note: There are some more bugs fix at the Discussions Section shared by other user.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;br&gt;
This ribbon will be continue to develop and it is now move to a new site. If you would like to contribute your codes and efforts to make this a better ribbon, or you wish obtain newer ribbon fix or upgrade, you may visit this project:
&lt;a href="http://officeribbon.codeplex.com/"&gt;http://officeribbon.codeplex.com/&lt;/a&gt;,
&lt;a href="http://www.staffinder.net/carbisoft/"&gt;http://www.staffinder.net/carbisoft/&lt;/a&gt;&lt;br&gt;
See discussion &amp;gt;&amp;gt; &lt;a href="http://ribbon.codeplex.com/discussions/280319"&gt;Office 2010 Style Orb, Tooltips, and a Minimize Feature&lt;/a&gt;&lt;br&gt;
Some bugs in this ribbon were fixed and features are extended.&lt;/p&gt;
&lt;h1&gt;How to Use This Ribbon Control&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; &lt;span style="text-decoration:underline"&gt;&lt;strong&gt;&lt;em&gt;To develop with .NET Framework 3.5 &amp;amp; 4.0.&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The original develop platform of this ribbon is .NET Framework 2.0. To use this ribbon in .NET Framework 3.5 or 4.0, please read this:&lt;/em&gt;
&lt;em&gt;&lt;a href="/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;br&gt;
Download: &lt;a href="http://www.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366215"&gt;
RibbonSample.zip&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;.&lt;/h2&gt;
&lt;h2&gt;Note: The main documentation of this page has been moved to new site. Please go to new site to read details guide and documentation.&lt;/h2&gt;
&lt;h2&gt;New Site:&amp;nbsp;&lt;a href="http://officeribbon.codeplex.com/documentation"&gt;http://officeribbon.codeplex.com/documentation&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h1&gt;Cautious While Using With Visual Studio 2010&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;ALWAYS SAVE AND CLOSE&lt;/strong&gt; straight away after you have finished designing the GUI editing of
&lt;strong&gt;Main Form&lt;/strong&gt; (The form that contains the ribbon control).&lt;br&gt;
&lt;br&gt;
&lt;strong&gt;Don't Run (Press F5)&lt;/strong&gt; The Application while the &lt;strong&gt;Main Form&lt;/strong&gt; is open in
&lt;strong&gt;Visual Studio 2010&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
Or else, you might experience that the ribbon control has disappeared. You will end up redesigning/redraw the ribbon and reconnect all the events that associated with the ribbon.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;br&gt;
Before using the ribbon, you have to patch the GlobalHook.cs.&lt;br&gt;
&lt;br&gt;
There are some workout for this, please read this: &lt;a href="/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;
Ribbon is slowing down application&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Wed, 02 Jan 2013 15:40:31 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20130102034031P</guid></item><item><title>Updated Wiki: How to Make a New Theme, Skin for this Ribbon Programmatically</title><link>http://ribbon.codeplex.com/wikipage?title=How to Make a New Theme, Skin for this Ribbon Programmatically&amp;version=12</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;How to Make a New Theme, Skin for this Ribbon Programmatically&lt;/h1&gt;
&lt;p&gt;&lt;em&gt;Default Theme Color&lt;/em&gt;&lt;br&gt;
&lt;img title="t3.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367681" alt="t3.png"&gt;&lt;br&gt;
&lt;br&gt;
&lt;em&gt;Example Color Theme of &lt;strong&gt;RibbonProfesionalRendererColorTableBlack.cs&lt;/strong&gt; (ready made by ribbon author).&lt;/em&gt;&lt;br&gt;
&lt;img title="t2.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367675" alt="t2.png"&gt;&lt;br&gt;
&lt;br&gt;
&lt;em&gt;Another Customize Theme (I made myself)&lt;/em&gt;&lt;br&gt;
&lt;img title="t4.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367683" alt="t4.png"&gt;&lt;br&gt;
.&lt;/p&gt;
&lt;h2&gt;Note: The main documentation of this page has been moved to new site. Please go to new site to read details guide and documentation.&lt;/h2&gt;
&lt;h2&gt;New Site:&amp;nbsp;&lt;a href="http://officeribbon.codeplex.com/wikipage?title=How%20to%20Make%20a%20New%20Theme%2c%20Skin%20for%20this%20Ribbon%20Programmatically"&gt;http://officeribbon.codeplex.com/wikipage?title=How%20to%20Make%20a%20New%20Theme%2c%20Skin%20for%20this%20Ribbon%20Programmatically&lt;/a&gt;&lt;/h2&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Wed, 02 Jan 2013 15:37:58 GMT</pubDate><guid isPermaLink="false">Updated Wiki: How to Make a New Theme, Skin for this Ribbon Programmatically 20130102033758P</guid></item><item><title>Updated Wiki: Using Ribbon wtih MDI (Multi Document Interface)</title><link>http://ribbon.codeplex.com/wikipage?title=Using Ribbon wtih MDI (Multi Document Interface)&amp;version=14</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Using Ribbon wtih MDI (Multi Document Interface)&lt;/h1&gt;
&lt;p&gt;1. Before start, we need to modify &lt;strong&gt;System.Windows.Forms.Ribbon.dll&lt;/strong&gt;. This steps is shared by
&lt;a href="http://www.codeplex.com/site/users/view/javierdd"&gt;javierdd&lt;/a&gt;. See Documentation &amp;gt;
&lt;a href="/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Using%20Ribbon%20wtih%20MDI%20%28Multi%20Document%20Interface%29"&gt;
Ribbon is slowing down application&lt;/a&gt;&lt;br&gt;
&lt;br&gt;
2. Download the source code of the ribbon. Open &lt;strong&gt;GlobalHook.cs&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366217" alt=""&gt;&lt;br&gt;
&lt;br&gt;
3. Find &lt;strong&gt;private void InstallHook()&lt;/strong&gt;. Add a &lt;strong&gt;return&lt;/strong&gt; statement at the beggining of the method so nothing is done.&lt;br&gt;
&lt;br&gt;
&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366218" alt=""&gt;&lt;br&gt;
&lt;br&gt;
4. Build the solution and obtain the newly edited &lt;strong&gt;System.Windows.Forms.Ribbon.dll&lt;/strong&gt;. We'll use this to build our next MDI WinForm. Or, you can simply download it (which I've modified) from here :
&lt;a href="http://www.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366229"&gt;System.Windows.Forms.Ribbon.dll&lt;/a&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;Step 5.....&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;.&lt;/em&gt;&lt;/p&gt;
&lt;h2&gt;The rest of the documentation of this page has been moved to new site. Please go to new site to continue reading the guide.&lt;/h2&gt;
&lt;h2&gt;New Site:&amp;nbsp;&lt;a href="http://officeribbon.codeplex.com/wikipage?title=Using%20Ribbon%20wtih%20MDI%20%28Multi%20Document%20Interface%29"&gt;http://officeribbon.codeplex.com/wikipage?title=Using%20Ribbon%20wtih%20MDI%20%28Multi%20Document%20Interface%29&lt;/a&gt;&lt;a href="http://officeribbon.codeplex.com/wikipage?title=Using%20Ribbon%20wtih%20MDI%20%28Multi%20Document%20Interface%29"&gt;&lt;/a&gt;&lt;/h2&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Wed, 02 Jan 2013 15:35:28 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Using Ribbon wtih MDI (Multi Document Interface) 20130102033528P</guid></item><item><title>Updated Wiki: Documentation</title><link>http://ribbon.codeplex.com/documentation?version=53</link><description>&lt;div class="wikidoc"&gt;
&lt;h2&gt;Content:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;How to Use This Ribbon Control (This page)
&lt;ul&gt;
&lt;li&gt;Cautious while using with &lt;strong&gt;Visual Studio 2010&lt;/strong&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;How to(s)
&lt;ul&gt;
&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Apply%20Keyboard%20Shortcuts&amp;referringTitle=Documentation"&gt;How to Apply Keyboard Shortcuts&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Display%20Tool%20Tip&amp;referringTitle=Documentation"&gt;How to Display Tool Tip&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=Programmatically%20Add%20RibbonButtons%20Into%20Ribbon&amp;referringTitle=Documentation"&gt;Programmatically Add RibbonButtons Into Ribbon&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Make%20a%20New%20Theme%2c%20Skin%20for%20this%20Ribbon%20Programmatically&amp;referringTitle=Documentation"&gt;How to Make a New Theme, Skin for this Ribbon Programmatically&lt;/a&gt; (Change color of each elements)
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Troubleshooting/Bugs Fix
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GloboHook.cs&lt;/strong&gt; Fix/Exceptions &lt;a href="/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;
Ribbon is slowing down application&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=Using%20Ribbon%20wtih%20MDI%20%28Multi%20Document%20Interface%29&amp;referringTitle=Documentation"&gt;Using Ribbon wtih MDI (Multi Document Interface)&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Note: There are some more bugs fix at the Discussions Section shared by other user.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;br&gt;
This ribbon will be continue to develop and it is now move to a new site. If you would like to contribute your codes and efforts to make this a better ribbon, or you wish obtain newer ribbon fix or upgrade, you may visit this project:
&lt;a href="http://officeribbon.codeplex.com/"&gt;http://officeribbon.codeplex.com/&lt;/a&gt;,
&lt;a href="http://www.staffinder.net/carbisoft/"&gt;http://www.staffinder.net/carbisoft/&lt;/a&gt;&lt;br&gt;
See discussion &amp;gt;&amp;gt; &lt;a href="http://ribbon.codeplex.com/discussions/280319"&gt;Office 2010 Style Orb, Tooltips, and a Minimize Feature&lt;/a&gt;&lt;br&gt;
Some bugs in this ribbon were fixed and features are extended.&lt;/p&gt;
&lt;h1&gt;How to Use This Ribbon Control&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; &lt;span style="text-decoration:underline"&gt;&lt;strong&gt;&lt;em&gt;To develop with .NET Framework 3.5 &amp;amp; 4.0.&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;The original develop platform of this ribbon is .NET Framework 2.0. To use this ribbon in .NET Framework 3.5 or 4.0, please read this:&lt;/em&gt;
&lt;em&gt;&lt;a href="/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;br&gt;
Download: &lt;a href="http://www.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366215"&gt;
RibbonSample.zip&lt;/a&gt;&lt;/p&gt;
&lt;h2&gt;.&lt;/h2&gt;
&lt;h2&gt;Note: The main documentation of this page has been moved to new site. Please go to new site to read details guide and documentation.&lt;/h2&gt;
&lt;h2&gt;New Site:&amp;nbsp;&lt;a href="http://officeribbon.codeplex.com/documentation"&gt;http://officeribbon.codeplex.com/documentation&lt;/a&gt;&lt;/h2&gt;
&lt;p&gt;.&lt;/p&gt;
&lt;hr&gt;
&lt;h1&gt;Cautious While Using With Visual Studio 2010&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;ALWAYS SAVE AND CLOSE&lt;/strong&gt; straight away after you have finished designing the GUI editing of
&lt;strong&gt;Main Form&lt;/strong&gt; (The form that contains the ribbon control).&lt;br&gt;
&lt;br&gt;
&lt;strong&gt;Don't Run (Press F5)&lt;/strong&gt; The Application while the &lt;strong&gt;Main Form&lt;/strong&gt; is open in
&lt;strong&gt;Visual Studio 2010&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
Or else, you might experience that the ribbon control has disappeared. You will end up redesigning/redraw the ribbon and reconnect all the events that associated with the ribbon.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;br&gt;
Before using the ribbon, you have to patch the GlobalHook.cs.&lt;br&gt;
&lt;br&gt;
There are some workout for this, please read this: &lt;a href="/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;
Ribbon is slowing down application&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Wed, 02 Jan 2013 15:30:47 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20130102033047P</guid></item><item><title>Updated Wiki: Ribbon is slowing down application</title><link>http://ribbon.codeplex.com/wikipage?title=Ribbon is slowing down application&amp;version=13</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Ribbon is slowing down application&lt;/h1&gt;
&lt;p&gt;Disscusion: &lt;a href="http://ribbon.codeplex.com/discussions/81454"&gt;http://ribbon.codeplex.com/discussions/81454&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2&gt;Solution 1:&lt;/h2&gt;
&lt;p&gt;GlobalHook.cs Fixed Shared by han6man*&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Download Source Code. &lt;/li&gt;&lt;li&gt;Find &lt;strong&gt;GlobalHook.cs&lt;/strong&gt; &lt;/li&gt;&lt;li&gt;Find &lt;strong&gt;private void InstallHook()&lt;/strong&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;a href="http://www.codeproject.com/Messages/4020406/Re-Here-is-a-Solution-that-works-for-2-0-and-4-0-n.aspx"&gt;http://www.codeproject.com/Messages/4020406/Re-Here-is-a-Solution-that-works-for-2-0-and-4-0-n.aspx&lt;/a&gt;&lt;/p&gt;
&lt;pre&gt;using System.Diagnostics;
&lt;/pre&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;pre&gt;/// &amp;lt;summary&amp;gt;
        /// Installs the actual unsafe hook
        /// &amp;lt;/summary&amp;gt;
        private void InstallHook()
        {
            /// Error check
            if (Handle != 0) throw new Exception(&amp;quot;Hook is already installed&amp;quot;);
 
            #region htype
            int htype = 0;
 
            switch (HookType)
            {
                case HookTypes.Mouse:
                    htype = WinApi.WH_MOUSE_LL;
                    break;
                case HookTypes.Keyboard:
                    htype = WinApi.WH_KEYBOARD_LL;
                    break;
                default:
                    throw new Exception(&amp;quot;HookType is not supported&amp;quot;);
            }
            #endregion
 
            /// Delegate to recieve message
            _HookProc = new HookProcCallBack(HookProc);
 
            /// Hook
            //_hHook = WinApi.SetWindowsHookEx(htype, _HookProc, Marshal.GetHINSTANCE(Assembly.GetExecutingAssembly().GetModules()[0]), 0);

            _hHook = WinApi.SetWindowsHookEx(htype, _HookProc, GetCurrentModule().BaseAddress, 0); // FIX
            if (_hHook == 0) _hHook = WinApi.SetWindowsHookEx(htype, _HookProc, IntPtr.Zero, 0);  // FIX

            /// Error check
            if (Handle == 0) throw new Win32Exception(Marshal.GetLastWin32Error());
            
 
        }
&lt;/pre&gt;
&lt;p&gt;&lt;strong&gt;Updated: 02 Jan 2013&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;static&lt;/span&gt; ProcessModule GetCurrentModule()
{
    &lt;span style="color:green"&gt;// need instance handle to module to create a system-wide hook&lt;/span&gt;
    Module[] list = System.Reflection.Assembly.GetExecutingAssembly().GetModules();
    System.Diagnostics.Debug.Assert(list != &lt;span style="color:blue"&gt;null&lt;/span&gt; &amp;amp;&amp;amp; list.Length &amp;gt; 0);
    &lt;span style="color:green"&gt;//System.Reflection.Assembly.LoadFrom(&amp;quot;System.Windows.Forms.Ribbon.dll&amp;quot;).ImageRuntimeVersion;&lt;/span&gt;
    &lt;span style="color:blue"&gt;var&lt;/span&gt; currentProcess = Process.GetCurrentProcess();
    &lt;span style="color:blue"&gt;var&lt;/span&gt; modules = currentProcess.Modules;
    ProcessModule mod = &lt;span style="color:blue"&gt;null&lt;/span&gt;;

    &lt;span style="color:blue"&gt;#region&lt;/span&gt;
    &lt;span style="color:blue"&gt;if&lt;/span&gt; (Environment.Version.Major &amp;lt; 3)
        &lt;span style="color:blue"&gt;foreach&lt;/span&gt; (ProcessModule m &lt;span style="color:blue"&gt;in&lt;/span&gt; modules)
        {
            &lt;span style="color:blue"&gt;if&lt;/span&gt; (m.ModuleName == list[0].Name)
            {
                mod = m;
                &lt;span style="color:blue"&gt;return&lt;/span&gt; mod;
            }
        }
    &lt;span style="color:blue"&gt;else&lt;/span&gt; &lt;span style="color:blue"&gt;if&lt;/span&gt; (mod == &lt;span style="color:blue"&gt;null&lt;/span&gt;) mod = Process.GetCurrentProcess().MainModule;

    &lt;span style="color:blue"&gt;return&lt;/span&gt; mod;

    &lt;span style="color:blue"&gt;#endregion&lt;/span&gt;
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;hr&gt;
&lt;h2&gt;Solution 2:&lt;/h2&gt;
&lt;p&gt;This fix will enable you to use with MDI Client, but might experience other ribbon controls (such as dropdownlist) to refresh incorrectly.&lt;br&gt;
(shared by &lt;a href="http://www.codeplex.com/site/users/view/javierdd"&gt;javierdd&lt;/a&gt;)&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Download the source code. &lt;/li&gt;&lt;li&gt;Find &lt;strong&gt;GlobalHook.cs&lt;/strong&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;img title="01.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366217" alt="01.png"&gt;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;Find &lt;strong&gt;private void InstallHook()&lt;/strong&gt; &lt;/li&gt;&lt;li&gt;Add a &lt;strong&gt;return&lt;/strong&gt; statement at the beggining of the method so nothing is done
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;&lt;img title="02.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366218" alt="02.png"&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h2&gt;Solution 3:&lt;/h2&gt;
&lt;p&gt;(shared by &lt;a href="http://www.codeplex.com/site/users/view/giague"&gt;giague&lt;/a&gt;)&lt;br&gt;
&lt;br&gt;
In Ribbon.cs find&lt;/p&gt;
&lt;pre&gt;protected override void WndProc(ref Message m)
&lt;/pre&gt;
&lt;p&gt;&lt;br&gt;
then sobstitute the proc with this one including the variable declaration&lt;br&gt;
&lt;br&gt;
private bool MouseOnCaption = false;&lt;br&gt;
&lt;br&gt;
It allow Dobule Click on caption bar and drag the from when in normal mode;&lt;/p&gt;
&lt;pre&gt;private bool MouseOnCaption = false;
protected override void WndProc(ref Message m)
{
    //These are constant to send Drag instruction to base.WndProc;
    const int HT_CAPTION = 0x2; const int WM_NCLBUTTONDOWN = 0xa1;
    bool bypassed = false;

    if (WinApi.IsWindows &amp;amp;&amp;amp; (ActualBorderMode == RibbonWindowMode.NonClientAreaGlass || ActualBorderMode == RibbonWindowMode.NonClientAreaCustomDrawn))
    {
        if (m.Msg == WinApi.WM_NCHITTEST)
        {
            Form f = FindForm();
            Rectangle caption;
            if (RightToLeft == RightToLeft.No)
            {
                int captionLeft = QuickAcessToolbar.Visible ? QuickAcessToolbar.Bounds.Right : OrbBounds.Right;
                if (QuickAcessToolbar.Visible &amp;amp;&amp;amp; QuickAcessToolbar.DropDownButtonVisible) captionLeft = QuickAcessToolbar.DropDownButton.Bounds.Right;
                caption = Rectangle.FromLTRB(captionLeft, 0, Width, CaptionBarSize);
            }
            else
            {
                int captionRight = QuickAcessToolbar.Visible ? QuickAcessToolbar.Bounds.Left : OrbBounds.Left;
                if (QuickAcessToolbar.Visible &amp;amp;&amp;amp; QuickAcessToolbar.DropDownButtonVisible) captionRight = QuickAcessToolbar.DropDownButton.Bounds.Left;
                caption = Rectangle.FromLTRB(0, 0, captionRight, CaptionBarSize);
            }

            Point screenPoint = new Point(WinApi.LoWord((int)m.LParam), WinApi.HiWord((int)m.LParam));
            Point ribbonPoint = PointToClient(screenPoint);
            bool onCaptionButtons = false;

            if (CaptionButtonsVisible)
            {
                onCaptionButtons = CloseButton.Bounds.Contains(ribbonPoint) ||
                MinimizeButton.Bounds.Contains(ribbonPoint) ||
                MaximizeRestoreButton.Bounds.Contains(ribbonPoint);
            }
            //Detect if mouse is on caption andalso not on CaptionButtons
            MouseOnCaption = (!onCaptionButtons &amp;amp;&amp;amp; RectangleToScreen(caption).Contains(screenPoint));
        }
        if (MouseOnCaption)
        {
            if (m.Msg == WinApi.WM_LBUTTONDBLCLK)
            {
                //If Double Click on caption change FormWindowsState
                Form f = FindForm();
                f.WindowState = f.WindowState == FormWindowState.Normal ? FormWindowState.Maximized : FormWindowState.Normal;
                bypassed = true;
            }
            if (m.Msg == WinApi.WM_LBUTTONDOWN)
            {
                //If mouse left button is down on caption create and send message to start drag.
                Form f = FindForm();
                Message mDrag = new Message();
                mDrag.HWnd = f.Handle;
                mDrag.Msg = WM_NCLBUTTONDOWN;
                mDrag.WParam = new IntPtr(HT_CAPTION);
                mDrag.LParam = IntPtr.Zero;
                base.WndProc(ref mDrag);
            }
        }

    }

    if (!bypassed)
    {
        base.WndProc(ref m);
    }
}
&lt;/pre&gt;
&lt;p&gt;GlobalHook.cs&lt;/p&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Wed, 02 Jan 2013 12:26:33 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Ribbon is slowing down application 20130102122633P</guid></item><item><title>New Comment on "Ribbon is slowing down application"</title><link>http://ribbon.codeplex.com/wikipage?title=Ribbon is slowing down application&amp;ANCHOR#C26061</link><description>public static ProcessModule GetCurrentModule&amp;#40;&amp;#41;&amp;#10;        &amp;#123;&amp;#10;            &amp;#47;&amp;#47; need instance handle to module to create a system-wide hook&amp;#10;            Module&amp;#91;&amp;#93; list &amp;#61; System.Reflection.Assembly.GetExecutingAssembly&amp;#40;&amp;#41;.GetModules&amp;#40;&amp;#41;&amp;#59;&amp;#10;            System.Diagnostics.Debug.Assert&amp;#40;list &amp;#33;&amp;#61; null &amp;#38;&amp;#38; list.Length &amp;#62; 0&amp;#41;&amp;#59;&amp;#10;            &amp;#47;&amp;#47;System.Reflection.Assembly.LoadFrom&amp;#40;&amp;#34;System.Windows.Forms.Ribbon.dll&amp;#34;&amp;#41;.ImageRuntimeVersion&amp;#59;&amp;#10;            var currentProcess &amp;#61; Process.GetCurrentProcess&amp;#40;&amp;#41;&amp;#59;&amp;#10;            var modules &amp;#61; currentProcess.Modules&amp;#59;&amp;#10;            ProcessModule mod &amp;#61; null&amp;#59;&amp;#10;&amp;#10;            &amp;#35;region&amp;#10;            if &amp;#40;Environment.Version.Major &amp;#60; 3&amp;#41;&amp;#10;                foreach &amp;#40;ProcessModule m in modules&amp;#41;&amp;#10;                &amp;#123;&amp;#10;                    if &amp;#40;m.ModuleName &amp;#61;&amp;#61; list&amp;#91;0&amp;#93;.Name&amp;#41;&amp;#10;                    &amp;#123;&amp;#10;                        mod &amp;#61; m&amp;#59;&amp;#10;                        return mod&amp;#59;&amp;#10;                    &amp;#125;&amp;#10;                &amp;#125;&amp;#10;            else if &amp;#40;mod &amp;#61;&amp;#61; null&amp;#41; mod &amp;#61; Process.GetCurrentProcess&amp;#40;&amp;#41;.MainModule&amp;#59;&amp;#10;            &amp;#10;            return mod&amp;#59;&amp;#10;&amp;#10;            &amp;#35;endregion&amp;#10;        &amp;#125;</description><author>han6man</author><pubDate>Wed, 02 Jan 2013 10:11:27 GMT</pubDate><guid isPermaLink="false">New Comment on "Ribbon is slowing down application" 20130102101127A</guid></item><item><title>Updated Wiki: Documentation</title><link>http://ribbon.codeplex.com/documentation?version=52</link><description>&lt;div class="wikidoc"&gt;
&lt;h2&gt;Content:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;How to Use This Ribbon Control (This page)
&lt;ul&gt;
&lt;li&gt;Cautious while using with &lt;strong&gt;Visual Studio 2010&lt;/strong&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;How to(s)
&lt;ul&gt;
&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Apply%20Keyboard%20Shortcuts&amp;referringTitle=Documentation"&gt;How to Apply Keyboard Shortcuts&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Display%20Tool%20Tip&amp;referringTitle=Documentation"&gt;How to Display Tool Tip&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=Programmatically%20Add%20RibbonButtons%20Into%20Ribbon&amp;referringTitle=Documentation"&gt;Programmatically Add RibbonButtons Into Ribbon&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Make%20a%20New%20Theme%2c%20Skin%20for%20this%20Ribbon%20Programmatically&amp;referringTitle=Documentation"&gt;How to Make a New Theme, Skin for this Ribbon Programmatically&lt;/a&gt; (Change color of each elements)
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Troubleshooting/Bugs Fix
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GloboHook.cs&lt;/strong&gt; Fix/Exceptions &lt;a href="/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;
Ribbon is slowing down application&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=Using%20Ribbon%20wtih%20MDI%20%28Multi%20Document%20Interface%29&amp;referringTitle=Documentation"&gt;Using Ribbon wtih MDI (Multi Document Interface)&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Note: There are some more bugs fix at the Discussions Section shared by other user.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;br&gt;
This ribbon will be continue to develop and it is now move to a new site. If you would like to contribute your codes and efforts to make this a better ribbon, or you wish obtain newer ribbon fix or upgrade, you may visit this project:
&lt;a href="http://officeribbon.codeplex.com/"&gt;http://officeribbon.codeplex.com/&lt;/a&gt;,
&lt;a href="http://www.staffinder.net/carbisoft/"&gt;http://www.staffinder.net/carbisoft/&lt;/a&gt;&lt;br&gt;
See discussion &amp;gt;&amp;gt; &lt;a href="http://ribbon.codeplex.com/discussions/280319"&gt;Office 2010 Style Orb, Tooltips, and a Minimize Feature&lt;/a&gt;&lt;br&gt;
Some bugs in this ribbon were fixed and features are extended.&lt;/p&gt;
&lt;h1&gt;How to Use This Ribbon Control&lt;/h1&gt;
&lt;table style="border-collapse:collapse; width:90%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="padding:5px; background-color:#f4fff4; border:1px solid #000000"&gt;
&lt;p&gt;&lt;strong&gt;Updated:&amp;nbsp;Note for Visual Studio 2012&lt;/strong&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You have to modify some of the source code before using it in Visual Studio 2012. Open the source code,&amp;nbsp;find this file &amp;gt;
&lt;strong&gt;GlobalHook.cs&lt;/strong&gt;.&amp;nbsp;Open &lt;strong&gt;GlobalHook.cs&lt;/strong&gt; and find this method:&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;private&lt;/span&gt; &lt;span style="color:blue"&gt;void&lt;/span&gt; InstallHook()
{ 
    &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; Error check&lt;/span&gt;
    &lt;span style="color:blue"&gt;if&lt;/span&gt; (Handle != 0) &lt;span style="color:blue"&gt;throw&lt;/span&gt; &lt;span style="color:blue"&gt;new&lt;/span&gt; Exception(&lt;span style="color:#a31515"&gt;&amp;quot;Hook is already installed&amp;quot;&lt;/span&gt;);
 
    ...
    ...
} 
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Replace the whole method with this:&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;private&lt;/span&gt; &lt;span style="color:blue"&gt;void&lt;/span&gt; InstallHook()
{
    &lt;span style="color:blue"&gt;return&lt;/span&gt;;
} 
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;You should be able to compile it regardless of target framework of 2.0, 3.5, 4.0 or 4.5. This might not be the best patch, but this is what I&amp;nbsp;currently&amp;nbsp;know that work.&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;1. Download the Ribbon Source and obtain &lt;strong&gt;System.Windows.Forms.Ribbon.dll&lt;/strong&gt; at
&lt;strong&gt;Download&lt;/strong&gt; page of this project.&lt;br&gt;
&lt;br&gt;
&lt;strong&gt;Note:&lt;/strong&gt; &lt;span style="text-decoration:underline"&gt;&lt;strong&gt;&lt;em&gt;To develop with .NET Framework 3.5 &amp;amp; 4.0.&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br&gt;
&lt;em&gt;The original develop platform of this ribbon is .NET Framework 2.0. To use this ribbon in .NET Framework 3.5 or 4.0, please read this:&lt;/em&gt;
&lt;em&gt;&lt;a href="/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;br&gt;
2. Create a blank WinForm Project.&lt;br&gt;
&lt;br&gt;
&lt;img title="01.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366164" alt="01.png"&gt;&lt;br&gt;
&lt;br&gt;
3. Adding Ribbon into Form.&lt;br&gt;
There are several ways to add the ribbon into the form. Below introduce 3 common ways:&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;1st Way: Using code to add the ribbon&amp;nbsp; &lt;/li&gt;&lt;li&gt;2nd Way: Add as Toolbox item &lt;/li&gt;&lt;li&gt;3rd Way: Add the source file into your project&amp;nbsp; &lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt;1st Way: Using code to add the ribbon&lt;/h4&gt;
&lt;p&gt;Add a Reference to &lt;em&gt;System.Windows.Forms.Ribbon.dll&lt;/em&gt; in your project.&lt;/p&gt;
&lt;p&gt;Right click on &lt;strong&gt;Reference&lt;/strong&gt; in &lt;strong&gt;Solution Explorer&lt;/strong&gt;, choose
&lt;strong&gt;Add&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366165" alt="" width="296" height="366"&gt;&lt;/p&gt;
&lt;p&gt;Locate &lt;strong&gt;&lt;em&gt;System.Windows.Forms.Ribbon.dll&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366166" alt="" width="498" height="424"&gt;&lt;/p&gt;
&lt;p&gt;Open the designer of Main Form. In this example, &lt;em&gt;Form1.Designer.cs&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366167" alt="" width="332" height="230"&gt;&lt;/p&gt;
&lt;p&gt;This is the initial code for &lt;strong&gt;&lt;em&gt;Form1.Designer.cs&amp;nbsp;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;namespace&lt;/span&gt; WindowsFormsApplication1
{
    &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1
    {
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; Required designer variable.&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:blue"&gt;private&lt;/span&gt; System.ComponentModel.IContainer components = &lt;span style="color:blue"&gt;null&lt;/span&gt;;

        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; Clean up any resources being used.&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;param name=&amp;quot;disposing&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="color:green"&gt;true if managed&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; resources should be disposed; otherwise, false.&amp;lt;/param&amp;gt;&lt;/span&gt;
        &lt;span style="color:blue"&gt;protected&lt;/span&gt; &lt;span style="color:blue"&gt;override&lt;/span&gt; &lt;span style="color:blue"&gt;void&lt;/span&gt; Dispose(&lt;span style="color:blue"&gt;bool&lt;/span&gt; disposing)
        {
            &lt;span style="color:blue"&gt;if&lt;/span&gt; (disposing &amp;amp;&amp;amp; (components != &lt;span style="color:blue"&gt;null&lt;/span&gt;))
            {
                components.Dispose();
            }
            &lt;span style="color:blue"&gt;base&lt;/span&gt;.Dispose(disposing);
        }

        &lt;span style="color:blue"&gt;#region&lt;/span&gt; Windows Form Designer generated code

        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; Required method for Designer support - do not modify&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; the contents of this method with the code editor.&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:blue"&gt;private&lt;/span&gt; &lt;span style="color:blue"&gt;void&lt;/span&gt; InitializeComponent()
        {
            &lt;span style="color:blue"&gt;this&lt;/span&gt;.components = &lt;span style="color:blue"&gt;new&lt;/span&gt; System.ComponentModel.Container();
            &lt;span style="color:blue"&gt;this&lt;/span&gt;.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            &lt;span style="color:blue"&gt;this&lt;/span&gt;.Text = &lt;span style="color:#a31515"&gt;&amp;quot;Form1&amp;quot;&lt;/span&gt;;
        }

        &lt;span style="color:blue"&gt;#endregion&lt;/span&gt;
    }
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&lt;/em&gt;Add three lines of code into &lt;strong&gt;&lt;em&gt;Form1.Designer.cs&amp;nbsp;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;em&gt;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;private&lt;/span&gt; System.Windows.Forms.Ribbon ribbon1;
&lt;span style="color:blue"&gt;this&lt;/span&gt;.ribbon1 = &lt;span style="color:blue"&gt;new&lt;/span&gt; System.Windows.Forms.Ribbon();
&lt;span style="color:blue"&gt;this&lt;/span&gt;.Controls.Add(&lt;span style="color:blue"&gt;this&lt;/span&gt;.ribbon1);
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366168" alt="" width="479" height="316"&gt;&lt;/p&gt;
&lt;p&gt;Save and close &lt;strong&gt;&lt;em&gt;Form1.Designer.cs&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;Double click and open &lt;em&gt;Form1.cs&lt;/em&gt;, and now the Ribbon control is added into the main form.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366169" alt="" width="333" height="218"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366170" alt="" width="307" height="307"&gt;&lt;/p&gt;
&lt;h4&gt;2nd Way: Add as toolbox item and drag/drop&lt;/h4&gt;
&lt;p&gt;This is more simpler way to add the ribbon into the form. Just simply create a new tab at Toolbox.&lt;/p&gt;
&lt;p&gt;Drag and drop the DLL into the new tab.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Click on any area of Toolbox. Right click &amp;gt; Add Tab. &lt;br&gt;
&lt;br&gt;
&lt;img title="a1.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367553" alt="a1.png"&gt;&lt;br&gt;
&lt;br&gt;
Give the new tab a name.&lt;br&gt;
&lt;br&gt;
&lt;img title="a2.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367554" alt="a2.png"&gt;&lt;br&gt;
&lt;br&gt;
Drag the DLL into the new tab area.&lt;br&gt;
&lt;br&gt;
&lt;img title="a3.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367555" alt="a3.png"&gt;&lt;br&gt;
&lt;br&gt;
Drag the Ribbon into the Form. Thats it. &lt;br&gt;
&lt;br&gt;
&lt;img title="a4.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367556" alt="a4.png"&gt;&lt;br&gt;
&lt;br&gt;
And this will automatically add a reference of &lt;strong&gt;System.Windows.Forms.Ribbon&lt;/strong&gt; for you.&lt;/p&gt;
&lt;h4&gt;3rd Way: Add the source file into your project&amp;nbsp;&lt;/h4&gt;
&lt;p&gt;Create a folder in the solution explorer of your project and add all the source cs file of the ribbon.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://download-codeplex.sec.s-msft.com/Download?ProjectName=ribbon&amp;DownloadId=596171" alt="" width="303" height="320"&gt;&lt;/p&gt;
&lt;p&gt;Build your project.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="http://download-codeplex.sec.s-msft.com/Download?ProjectName=ribbon&amp;DownloadId=596172" alt=""&gt;&lt;/p&gt;
&lt;p&gt;Then drag &amp;amp; drop the ribbon control from toolbox explorer into the form.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://download-codeplex.sec.s-msft.com/Download?ProjectName=ribbon&amp;DownloadId=596173" alt=""&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;The benefit of adding the ribbon this way is you won't have another separate assembly (DLL)&amp;nbsp;to deliver with your application. The source of the ribbon is embed directly into your project.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
4. Click on the Ribbon and Click &lt;strong&gt;Add Tab&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
&lt;img title="08.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366171" alt="08.png"&gt;&lt;br&gt;
&lt;br&gt;
5. Click on the newly added &lt;strong&gt;RibbonTab&lt;/strong&gt;, then click &lt;strong&gt;Add Panel&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
&lt;img title="09.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366172" alt="09.png"&gt;&lt;br&gt;
&lt;br&gt;
6. Click on the newly added &lt;strong&gt;RibbonPanel&lt;/strong&gt;, go to &lt;strong&gt;Properties&lt;/strong&gt;. A set of available controls that can be added to the
&lt;strong&gt;RibbonPanel&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
&lt;img title="10.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366182" alt="10.png"&gt;&lt;/p&gt;
&lt;p&gt;Some of you might not able to see the extra command links of &amp;quot;&lt;strong&gt;Add Button&lt;/strong&gt;&amp;quot;, &amp;quot;&lt;strong&gt;Add ButtonList&lt;/strong&gt;&amp;quot;, &amp;quot;&lt;strong&gt;Add ItemGroup&lt;/strong&gt;&amp;quot;... etc at the Properties Explorer.&amp;nbsp;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://download-codeplex.sec.s-msft.com/Download?ProjectName=ribbon&amp;DownloadId=596169" alt=""&gt;&lt;/p&gt;
&lt;p&gt;What you need to do is right click at the Properties Explorer and Tick/Check the [Commands].&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://download-codeplex.sec.s-msft.com/Download?ProjectName=ribbon&amp;DownloadId=596170" alt=""&gt;&lt;/p&gt;
&lt;p&gt;7. Try add some buttons into the &lt;strong&gt;RibbonPanel&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
8. Click on the &lt;strong&gt;RibbonButtons&lt;/strong&gt;, go to &lt;strong&gt;Properties&lt;/strong&gt;. Lets try to change the image and the label text of the button.&lt;br&gt;
&lt;br&gt;
&lt;img title="13.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366185" alt="13.png"&gt;&lt;br&gt;
&lt;br&gt;
9. This is how your ribbon looks like now.&lt;br&gt;
10. Now, create the click event for the buttons. Click on the &lt;strong&gt;RibbonButton&lt;/strong&gt;, go to
&lt;strong&gt;Properties&lt;/strong&gt;, modify the &lt;strong&gt;Name&lt;/strong&gt; of the button.&lt;br&gt;
&lt;br&gt;
&lt;img title="11.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366183" alt="11.png"&gt;&lt;br&gt;
&lt;br&gt;
11. Open the code of &lt;strong&gt;Form1.cs&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
12. This is what we have initially&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;using&lt;/span&gt; System;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Collections.Generic;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.ComponentModel;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Data;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Drawing;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Text;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Windows.Forms;

&lt;span style="color:blue"&gt;namespace&lt;/span&gt; WindowsFormsApplication1
{
    &lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1 : Form
    {
        &lt;span style="color:blue"&gt;public&lt;/span&gt; Form1()
        {
            InitializeComponent();
        }
    }
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;13. Add the &lt;strong&gt;Button Clicked&lt;/strong&gt; event for the &lt;strong&gt;RibbonButton&lt;/strong&gt;.&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; Form1()
{
    InitializeComponent();
    cmdNew.Click &amp;#43;= &lt;span style="color:blue"&gt;new&lt;/span&gt; EventHandler(cmdNew_Click);
    cmdSave.Click &amp;#43;= &lt;span style="color:blue"&gt;new&lt;/span&gt; EventHandler(cmdSave_Click);
}

&lt;span style="color:blue"&gt;void&lt;/span&gt; cmdNew_Click(&lt;span style="color:blue"&gt;object&lt;/span&gt; sender, EventArgs e)
{
    MessageBox.Show(&lt;span style="color:#a31515"&gt;&amp;quot;Button \&amp;quot;New\&amp;quot; Clicked.&amp;quot;&lt;/span&gt;);
}

&lt;span style="color:blue"&gt;void&lt;/span&gt; cmdSave_Click(&lt;span style="color:blue"&gt;object&lt;/span&gt; sender, EventArgs e)
{
    MessageBox.Show(&lt;span style="color:#a31515"&gt;&amp;quot;Button \&amp;quot;Save\&amp;quot; Clicked.&amp;quot;&lt;/span&gt;);
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;14. Press &lt;strong&gt;F5&lt;/strong&gt; to run the application. Done.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
&lt;img title="12.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366184" alt="12.png"&gt;&lt;br&gt;
&lt;br&gt;
15. You might want to inherit your &lt;strong&gt;Main Form&lt;/strong&gt; into a &lt;strong&gt;RibbonForm&lt;/strong&gt; to have extra feature. Such as:&lt;br&gt;
Note: Inherit the &lt;strong&gt;Main Form&lt;/strong&gt; to &lt;strong&gt;RibbonForm&lt;/strong&gt; will have some compatible problems with some of
&lt;strong&gt;System.Windows.Forms&lt;/strong&gt; controls.&lt;br&gt;
&lt;br&gt;
&lt;img title="14.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366214" alt="14.png"&gt;&lt;br&gt;
&lt;br&gt;
16. At the code of &lt;strong&gt;Form1.cs&lt;/strong&gt;, change this line:&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1 : Form
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;to this line:&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1 : RibbonForm
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Here is the sample project explain above:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Download: &lt;a href="http://www.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366215"&gt;
RibbonSample.zip&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h1&gt;Cautious While Using With Visual Studio 2010&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;ALWAYS SAVE AND CLOSE&lt;/strong&gt; straight away after you have finished designing the GUI editing of
&lt;strong&gt;Main Form&lt;/strong&gt; (The form that contains the ribbon control).&lt;br&gt;
&lt;br&gt;
&lt;strong&gt;Don't Run (Press F5)&lt;/strong&gt; The Application while the &lt;strong&gt;Main Form&lt;/strong&gt; is open in
&lt;strong&gt;Visual Studio 2010&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
Or else, you might experience that the ribbon control has disappeared. You will end up redesigning/redraw the ribbon and reconnect all the events that associated with the ribbon.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;br&gt;
Before using the ribbon, you have to patch the GlobalHook.cs.&lt;br&gt;
&lt;br&gt;
There are some workout for this, please read this: &lt;a href="/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;
Ribbon is slowing down application&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Tue, 01 Jan 2013 12:42:16 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20130101124216P</guid></item><item><title>Updated Wiki: Documentation</title><link>http://ribbon.codeplex.com/documentation?version=51</link><description>&lt;div class="wikidoc"&gt;
&lt;h2&gt;Content:&lt;/h2&gt;
&lt;ul&gt;
&lt;li&gt;How to Use This Ribbon Control (This page)
&lt;ul&gt;
&lt;li&gt;Cautious while using with &lt;strong&gt;Visual Studio 2010&lt;/strong&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;How to(s)
&lt;ul&gt;
&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Apply%20Keyboard%20Shortcuts&amp;referringTitle=Documentation"&gt;How to Apply Keyboard Shortcuts&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Display%20Tool%20Tip&amp;referringTitle=Documentation"&gt;How to Display Tool Tip&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=Programmatically%20Add%20RibbonButtons%20Into%20Ribbon&amp;referringTitle=Documentation"&gt;Programmatically Add RibbonButtons Into Ribbon&lt;/a&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=How%20to%20Make%20a%20New%20Theme%2c%20Skin%20for%20this%20Ribbon%20Programmatically&amp;referringTitle=Documentation"&gt;How to Make a New Theme, Skin for this Ribbon Programmatically&lt;/a&gt; (Change color of each elements)
&lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;Troubleshooting/Bugs Fix
&lt;ul&gt;
&lt;li&gt;&lt;strong&gt;GloboHook.cs&lt;/strong&gt; Fix/Exceptions &lt;a href="/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;
Ribbon is slowing down application&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;
&lt;/li&gt;&lt;li&gt;&lt;a href="/wikipage?title=Using%20Ribbon%20wtih%20MDI%20%28Multi%20Document%20Interface%29&amp;referringTitle=Documentation"&gt;Using Ribbon wtih MDI (Multi Document Interface)&lt;/a&gt;
&lt;/li&gt;&lt;/ul&gt;
&lt;p&gt;Note: There are some more bugs fix at the Discussions Section shared by other user.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;br&gt;
This ribbon will be continue to develop and it is now move to a new site. If you would like to contribute your codes and efforts to make this a better ribbon, or you wish obtain newer ribbon fix or upgrade, you may visit this project:
&lt;a href="http://officeribbon.codeplex.com/"&gt;http://officeribbon.codeplex.com/&lt;/a&gt;,
&lt;a href="http://www.staffinder.net/carbisoft/"&gt;http://www.staffinder.net/carbisoft/&lt;/a&gt;&lt;br&gt;
See discussion &amp;gt;&amp;gt; &lt;a href="http://ribbon.codeplex.com/discussions/280319"&gt;Office 2010 Style Orb, Tooltips, and a Minimize Feature&lt;/a&gt;&lt;br&gt;
Some bugs in this ribbon were fixed and features are extended.&lt;/p&gt;
&lt;h1&gt;How to Use This Ribbon Control&lt;/h1&gt;
&lt;table style="border-collapse:collapse; width:90%"&gt;
&lt;tbody&gt;
&lt;tr&gt;
&lt;td style="padding:5px; background-color:#f4fff4; border:1px solid #000000"&gt;
&lt;p&gt;&lt;strong&gt;Updated:&amp;nbsp;Note for Visual Studio 2012&lt;/strong&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You have to modify some of the source code before using it in Visual Studio 2012. Open the source code,&amp;nbsp;find this file &amp;gt;
&lt;strong&gt;GlobalHook.cs&lt;/strong&gt;.&amp;nbsp;Open &lt;strong&gt;GlobalHook.cs&lt;/strong&gt; and find this method:&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;private&lt;/span&gt; &lt;span style="color:blue"&gt;void&lt;/span&gt; InstallHook()
{ 
    &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; Error check&lt;/span&gt;
    &lt;span style="color:blue"&gt;if&lt;/span&gt; (Handle != 0) &lt;span style="color:blue"&gt;throw&lt;/span&gt; &lt;span style="color:blue"&gt;new&lt;/span&gt; Exception(&lt;span style="color:#a31515"&gt;&amp;quot;Hook is already installed&amp;quot;&lt;/span&gt;);
 
    ...
    ...
} 
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;Replace the whole method with this:&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;private&lt;/span&gt; &lt;span style="color:blue"&gt;void&lt;/span&gt; InstallHook()
{
    &lt;span style="color:blue"&gt;return&lt;/span&gt;;
} 
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;You should be able to compile it regardless of target framework of 2.0, 3.5, 4.0 or 4.5. This might not be the best patch, but this is what I&amp;nbsp;currently&amp;nbsp;know that work.&amp;nbsp;&lt;/p&gt;
&lt;/td&gt;
&lt;/tr&gt;
&lt;/tbody&gt;
&lt;/table&gt;
&lt;p&gt;1. Download the Ribbon Source and obtain &lt;strong&gt;System.Windows.Forms.Ribbon.dll&lt;/strong&gt; at
&lt;strong&gt;Download&lt;/strong&gt; page of this project.&lt;br&gt;
&lt;br&gt;
&lt;strong&gt;Note:&lt;/strong&gt; &lt;span style="text-decoration:underline"&gt;&lt;strong&gt;&lt;em&gt;To develop with .NET Framework 3.5 &amp;amp; 4.0.&lt;/em&gt;&lt;/strong&gt;&lt;/span&gt;&lt;br&gt;
&lt;em&gt;The original develop platform of this ribbon is .NET Framework 2.0. To use this ribbon in .NET Framework 3.5 or 4.0, please read this:&lt;/em&gt;
&lt;em&gt;&lt;a href="/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/a&gt;&lt;/em&gt;&lt;br&gt;
&lt;br&gt;
2. Create a blank WinForm Project.&lt;br&gt;
&lt;br&gt;
&lt;img title="01.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366164" alt="01.png"&gt;&lt;br&gt;
&lt;br&gt;
3. Adding Ribbon into Form.&lt;br&gt;
There are several ways to add the ribbon into the form. Below introduce 3 common ways:&amp;nbsp;&lt;/p&gt;
&lt;ul&gt;
&lt;li&gt;1st Way: Using code to add the ribbon&amp;nbsp; &lt;/li&gt;&lt;li&gt;2nd Way: Add as Toolbox item &lt;/li&gt;&lt;li&gt;3rd Way: Add the source file into your project&amp;nbsp; &lt;/li&gt;&lt;/ul&gt;
&lt;h4&gt;1st Way: Using code to add the ribbon&lt;/h4&gt;
&lt;p&gt;Add a Reference to &lt;em&gt;System.Windows.Forms.Ribbon.dll&lt;/em&gt; in your project.&lt;/p&gt;
&lt;p&gt;Right click on &lt;strong&gt;Reference&lt;/strong&gt; in &lt;strong&gt;Solution Explorer&lt;/strong&gt;, choose
&lt;strong&gt;Add&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366165" alt="" width="296" height="366"&gt;&lt;/p&gt;
&lt;p&gt;Locate &lt;strong&gt;&lt;em&gt;System.Windows.Forms.Ribbon.dll&lt;/em&gt;&lt;/strong&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366166" alt="" width="498" height="424"&gt;&lt;/p&gt;
&lt;p&gt;Open the designer of Main Form. In this example, &lt;em&gt;Form1.Designer.cs&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366167" alt="" width="332" height="230"&gt;&lt;/p&gt;
&lt;p&gt;This is the initial code for &lt;strong&gt;&lt;em&gt;Form1.Designer.cs&amp;nbsp;&lt;/em&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;namespace&lt;/span&gt; WindowsFormsApplication1
{
    &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1
    {
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; Required designer variable.&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:blue"&gt;private&lt;/span&gt; System.ComponentModel.IContainer components = &lt;span style="color:blue"&gt;null&lt;/span&gt;;

        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; Clean up any resources being used.&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;param name=&amp;quot;disposing&amp;quot;&amp;gt;&lt;/span&gt;&lt;span style="color:green"&gt;true if managed&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; resources should be disposed; otherwise, false.&amp;lt;/param&amp;gt;&lt;/span&gt;
        &lt;span style="color:blue"&gt;protected&lt;/span&gt; &lt;span style="color:blue"&gt;override&lt;/span&gt; &lt;span style="color:blue"&gt;void&lt;/span&gt; Dispose(&lt;span style="color:blue"&gt;bool&lt;/span&gt; disposing)
        {
            &lt;span style="color:blue"&gt;if&lt;/span&gt; (disposing &amp;amp;&amp;amp; (components != &lt;span style="color:blue"&gt;null&lt;/span&gt;))
            {
                components.Dispose();
            }
            &lt;span style="color:blue"&gt;base&lt;/span&gt;.Dispose(disposing);
        }

        &lt;span style="color:blue"&gt;#region&lt;/span&gt; Windows Form Designer generated code

        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; Required method for Designer support - do not modify&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt;&lt;span style="color:green"&gt; the contents of this method with the code editor.&lt;/span&gt;
        &lt;span style="color:gray"&gt;///&lt;/span&gt; &lt;span style="color:gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;
        &lt;span style="color:blue"&gt;private&lt;/span&gt; &lt;span style="color:blue"&gt;void&lt;/span&gt; InitializeComponent()
        {
            &lt;span style="color:blue"&gt;this&lt;/span&gt;.components = &lt;span style="color:blue"&gt;new&lt;/span&gt; System.ComponentModel.Container();
            &lt;span style="color:blue"&gt;this&lt;/span&gt;.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            &lt;span style="color:blue"&gt;this&lt;/span&gt;.Text = &lt;span style="color:#a31515"&gt;&amp;quot;Form1&amp;quot;&lt;/span&gt;;
        }

        &lt;span style="color:blue"&gt;#endregion&lt;/span&gt;
    }
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&lt;/em&gt;Add three lines of code into &lt;em&gt;Form1.Designer.cs&amp;nbsp;&lt;/em&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;private&lt;/span&gt; System.Windows.Forms.Ribbon ribbon1;
&lt;span style="color:blue"&gt;this&lt;/span&gt;.ribbon1 = &lt;span style="color:blue"&gt;new&lt;/span&gt; System.Windows.Forms.Ribbon();
&lt;span style="color:blue"&gt;this&lt;/span&gt;.Controls.Add(&lt;span style="color:blue"&gt;this&lt;/span&gt;.ribbon1);
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366168" alt="" width="479" height="316"&gt;&lt;/p&gt;
&lt;p&gt;Save and close &lt;em&gt;Form1.Designer.cs&lt;/em&gt;.&lt;/p&gt;
&lt;p&gt;Double click and open &lt;em&gt;Form1.cs&lt;/em&gt;, and now the Ribbon control is added into the main form.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366169" alt="" width="333" height="218"&gt;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366170" alt="" width="307" height="307"&gt;&lt;/p&gt;
&lt;h4&gt;2nd Way: Add as toolbox item and drag/drop&lt;/h4&gt;
&lt;p&gt;This is more simpler way to add the ribbon into the form. Just simply create a new tab at Toolbox.&lt;/p&gt;
&lt;p&gt;Drag and drop the DLL into the new tab.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Click on any area of Toolbox. Right click &amp;gt; Add Tab. &lt;br&gt;
&lt;br&gt;
&lt;img title="a1.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367553" alt="a1.png"&gt;&lt;br&gt;
&lt;br&gt;
Give the new tab a name.&lt;br&gt;
&lt;br&gt;
&lt;img title="a2.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367554" alt="a2.png"&gt;&lt;br&gt;
&lt;br&gt;
Drag the DLL into the new tab area.&lt;br&gt;
&lt;br&gt;
&lt;img title="a3.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367555" alt="a3.png"&gt;&lt;br&gt;
&lt;br&gt;
Drag the Ribbon into the Form. Thats it. &lt;br&gt;
&lt;br&gt;
&lt;img title="a4.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=367556" alt="a4.png"&gt;&lt;br&gt;
&lt;br&gt;
And this will automatically add a reference of &lt;strong&gt;System.Windows.Forms.Ribbon&lt;/strong&gt; for you.&lt;/p&gt;
&lt;h4&gt;3rd Way: Add the source file into your project&amp;nbsp;&lt;/h4&gt;
&lt;p&gt;Create a folder in the solution explorer of your project and add all the source cs file of the ribbon.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;img src="http://download-codeplex.sec.s-msft.com/Download?ProjectName=ribbon&amp;DownloadId=596171" alt="" width="303" height="320"&gt;&lt;/p&gt;
&lt;p&gt;Build your project.&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;img src="http://download-codeplex.sec.s-msft.com/Download?ProjectName=ribbon&amp;DownloadId=596172" alt=""&gt;&lt;/p&gt;
&lt;p&gt;Then drag &amp;amp; drop the ribbon control from toolbox explorer into the form.&lt;/p&gt;
&lt;p&gt;&lt;img src="http://download-codeplex.sec.s-msft.com/Download?ProjectName=ribbon&amp;DownloadId=596173" alt=""&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;The benefit of adding the ribbon this way is you won't have another separate assembly (DLL)&amp;nbsp;to deliver with your application. The source of the ribbon is embed directly into your project.&amp;nbsp;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
&lt;br&gt;
&lt;br&gt;
4. Click on the Ribbon and Click &lt;strong&gt;Add Tab&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
&lt;img title="08.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366171" alt="08.png"&gt;&lt;br&gt;
&lt;br&gt;
5. Click on the newly added &lt;strong&gt;RibbonTab&lt;/strong&gt;, then click &lt;strong&gt;Add Panel&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
&lt;img title="09.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366172" alt="09.png"&gt;&lt;br&gt;
&lt;br&gt;
6. Click on the newly added &lt;strong&gt;RibbonPanel&lt;/strong&gt;, go to &lt;strong&gt;Properties&lt;/strong&gt;. A set of available controls that can be added to the
&lt;strong&gt;RibbonPanel&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
&lt;img title="10.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366182" alt="10.png"&gt;&lt;br&gt;
&lt;br&gt;
7. Try add some buttons into the &lt;strong&gt;RibbonPanel&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
8. Click on the &lt;strong&gt;RibbonButtons&lt;/strong&gt;, go to &lt;strong&gt;Properties&lt;/strong&gt;. Lets try to change the image and the label text of the button.&lt;br&gt;
&lt;br&gt;
&lt;img title="13.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366185" alt="13.png"&gt;&lt;br&gt;
&lt;br&gt;
9. This is how your ribbon looks like now.&lt;br&gt;
10. Now, create the click event for the buttons. Click on the &lt;strong&gt;RibbonButton&lt;/strong&gt;, go to
&lt;strong&gt;Properties&lt;/strong&gt;, modify the &lt;strong&gt;Name&lt;/strong&gt; of the button.&lt;br&gt;
&lt;br&gt;
&lt;img title="11.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366183" alt="11.png"&gt;&lt;br&gt;
&lt;br&gt;
11. Open the code of &lt;strong&gt;Form1.cs&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
12. This is what we have initially &lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;using&lt;/span&gt; System;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Collections.Generic;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.ComponentModel;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Data;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Drawing;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Text;
&lt;span style="color:blue"&gt;using&lt;/span&gt; System.Windows.Forms;

&lt;span style="color:blue"&gt;namespace&lt;/span&gt; WindowsFormsApplication1
{
    &lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1 : Form
    {
        &lt;span style="color:blue"&gt;public&lt;/span&gt; Form1()
        {
            InitializeComponent();
        }
    }
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;13. Add the &lt;strong&gt;Button Clicked&lt;/strong&gt; event for the &lt;strong&gt;RibbonButton&lt;/strong&gt;.
&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; Form1()
{
    InitializeComponent();
    cmdNew.Click &amp;#43;= &lt;span style="color:blue"&gt;new&lt;/span&gt; EventHandler(cmdNew_Click);
    cmdSave.Click &amp;#43;= &lt;span style="color:blue"&gt;new&lt;/span&gt; EventHandler(cmdSave_Click);
}

&lt;span style="color:blue"&gt;void&lt;/span&gt; cmdNew_Click(&lt;span style="color:blue"&gt;object&lt;/span&gt; sender, EventArgs e)
{
    MessageBox.Show(&lt;span style="color:#a31515"&gt;&amp;quot;Button \&amp;quot;New\&amp;quot; Clicked.&amp;quot;&lt;/span&gt;);
}

&lt;span style="color:blue"&gt;void&lt;/span&gt; cmdSave_Click(&lt;span style="color:blue"&gt;object&lt;/span&gt; sender, EventArgs e)
{
    MessageBox.Show(&lt;span style="color:#a31515"&gt;&amp;quot;Button \&amp;quot;Save\&amp;quot; Clicked.&amp;quot;&lt;/span&gt;);
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;14. Press &lt;strong&gt;F5&lt;/strong&gt; to run the application. Done.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
&lt;img title="12.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366184" alt="12.png"&gt;&lt;br&gt;
&lt;br&gt;
15. You might want to inherit your &lt;strong&gt;Main Form&lt;/strong&gt; into a &lt;strong&gt;RibbonForm&lt;/strong&gt; to have extra feature. Such as:&lt;br&gt;
Note: Inherit the &lt;strong&gt;Main Form&lt;/strong&gt; to &lt;strong&gt;RibbonForm&lt;/strong&gt; will have some compatible problems with some of
&lt;strong&gt;System.Windows.Forms&lt;/strong&gt; controls.&lt;br&gt;
&lt;br&gt;
&lt;img title="14.png" src="http://i3.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366214" alt="14.png"&gt;&lt;br&gt;
&lt;br&gt;
16. At the code of &lt;strong&gt;Form1.cs&lt;/strong&gt;, change this line: &lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1 : Form
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;to this line: &lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1 : RibbonForm
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;Here is the sample project explain above:&amp;nbsp;&lt;/p&gt;
&lt;p&gt;Download: &lt;a href="http://www.codeplex.com/Download?ProjectName=ribbon&amp;DownloadId=366215"&gt;
RibbonSample.zip&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;h1&gt;Cautious While Using With Visual Studio 2010&lt;/h1&gt;
&lt;p&gt;&lt;strong&gt;ALWAYS SAVE AND CLOSE&lt;/strong&gt; straight away after you have finished designing the GUI editing of
&lt;strong&gt;Main Form&lt;/strong&gt; (The form that contains the ribbon control).&lt;br&gt;
&lt;br&gt;
&lt;strong&gt;Don't Run (Press F5)&lt;/strong&gt; The Application while the &lt;strong&gt;Main Form&lt;/strong&gt; is open in
&lt;strong&gt;Visual Studio 2010&lt;/strong&gt;.&lt;br&gt;
&lt;br&gt;
Or else, you might experience that the ribbon control has disappeared. You will end up redesigning/redraw the ribbon and reconnect all the events that associated with the ribbon.&lt;/p&gt;
&lt;hr&gt;
&lt;p&gt;&lt;br&gt;
Before using the ribbon, you have to patch the GlobalHook.cs.&lt;br&gt;
&lt;br&gt;
There are some workout for this, please read this: &lt;a href="/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;
Ribbon is slowing down application&lt;/a&gt;&lt;/p&gt;
&lt;hr&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Tue, 01 Jan 2013 12:34:59 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20130101123459P</guid></item><item><title>Updated Wiki: Programmatically Add RibbonButtons Into Ribbon</title><link>http://ribbon.codeplex.com/wikipage?title=Programmatically Add RibbonButtons Into Ribbon&amp;version=4</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Programmatically Add RibbonButtons Into Ribbon&lt;/h1&gt;
&lt;hr&gt;
&lt;p&gt;This tip is contributed by &lt;a href="http://www.codeproject.com/script/Membership/View.aspx?mid=1617549"&gt;
Franziska&lt;/a&gt;.&lt;br&gt;
&lt;em&gt;&lt;a href="http://www.codeproject.com/Messages/4454699/Re-Programmatically-add-Buttons-to-a-Panel-or-set-.aspx"&gt;http://www.codeproject.com/Messages/4454699/Re-Programmatically-add-Buttons-to-a-Panel-or-set-.aspx&lt;/a&gt;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;To add a ribbon button programmatically into a ribbon, after create the Item/Button or whatever you want to add to the RibbonPanel, add it immediately after creating it, then set the Text/Images an DO NOT use SetBounds, the it measures the required size
 for itself.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
Example:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;This is correct&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;RibbonButton rbBtn =  &lt;span style="color:blue"&gt;new&lt;/span&gt; RibbonButton(&lt;span style="color:#a31515"&gt;&amp;quot;Button1&amp;quot;&lt;/span&gt;);
&lt;span style="color:green"&gt;// below line must be added here&lt;/span&gt;
ribbonPanel2.Items.Add(rbBtn);
&lt;span style="color:green"&gt;// Then, you can change any properties after that&lt;/span&gt;
&lt;span style="color:green"&gt;// Examples of properties changes:&lt;/span&gt;
rbBtn.Image = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.SmallImage = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.Text = &lt;span style="color:#a31515"&gt;&amp;quot;My Dynamic Added Button&amp;quot;&lt;/span&gt;;
&lt;span style="color:green"&gt;// Don't add the button into panel here&lt;/span&gt;
&lt;span style="color:green"&gt;// ribbonPanel2.Items.Add(rbBtn);&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;This is wrong&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;RibbonButton rbBtn =  &lt;span style="color:blue"&gt;new&lt;/span&gt; RibbonButton(&lt;span style="color:#a31515"&gt;&amp;quot;Button1&amp;quot;&lt;/span&gt;);
rbBtn.Image = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.SmallImage = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.Text = &lt;span style="color:#a31515"&gt;&amp;quot;My Dynamic Added Button&amp;quot;&lt;/span&gt;;
ribbonPanel2.Items.Add(rbBtn);
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Tue, 18 Dec 2012 12:17:21 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Programmatically Add RibbonButtons Into Ribbon 20121218121721P</guid></item><item><title>Updated Wiki: Programmatically Add RibbonButtons Into Ribbon</title><link>http://ribbon.codeplex.com/wikipage?title=Programmatically Add RibbonButtons Into Ribbon&amp;version=3</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Programmatically Add RibbonButtons Into Ribbon&lt;/h1&gt;
&lt;p&gt;&lt;em&gt;&amp;nbsp;&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;&lt;em&gt;&lt;/p&gt;
&lt;hr&gt;
This tip is contributed by &lt;a href="http://www.codeproject.com/script/Membership/View.aspx?mid=1617549"&gt;
Franziska&lt;/a&gt;.&lt;/em&gt;&lt;br&gt;
&lt;em&gt;&lt;a href="http://www.codeproject.com/Messages/4454699/Re-Programmatically-add-Buttons-to-a-Panel-or-set-.aspx"&gt;http://www.codeproject.com/Messages/4454699/Re-Programmatically-add-Buttons-to-a-Panel-or-set-.aspx&lt;/a&gt;&lt;/em&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;To add a ribbon button programmatically into a ribbon, after create the Item/Button or whatever you want to add to the RibbonPanel, add it immediately after creating it, then set the Text/Images an DO NOT use SetBounds, the it measures the required size
 for itself.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;
Example:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;This is correct&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;RibbonButton rbBtn =  &lt;span style="color:blue"&gt;new&lt;/span&gt; RibbonButton(&lt;span style="color:#a31515"&gt;&amp;quot;Button1&amp;quot;&lt;/span&gt;);
&lt;span style="color:green"&gt;// below line must be added here&lt;/span&gt;
ribbonPanel2.Items.Add(rbBtn);
&lt;span style="color:green"&gt;// Then, you can change any properties after that&lt;/span&gt;
&lt;span style="color:green"&gt;// Examples of properties changes:&lt;/span&gt;
rbBtn.Image = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.SmallImage = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.Text = &lt;span style="color:#a31515"&gt;&amp;quot;My Dynamic Added Button&amp;quot;&lt;/span&gt;;
&lt;span style="color:green"&gt;// Don't add the button into panel here&lt;/span&gt;
&lt;span style="color:green"&gt;// ribbonPanel2.Items.Add(rbBtn);&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;This is wrong&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;RibbonButton rbBtn =  &lt;span style="color:blue"&gt;new&lt;/span&gt; RibbonButton(&lt;span style="color:#a31515"&gt;&amp;quot;Button1&amp;quot;&lt;/span&gt;);
rbBtn.Image = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.SmallImage = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.Text = &lt;span style="color:#a31515"&gt;&amp;quot;My Dynamic Added Button&amp;quot;&lt;/span&gt;;
ribbonPanel2.Items.Add(rbBtn);
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Tue, 18 Dec 2012 12:16:34 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Programmatically Add RibbonButtons Into Ribbon 20121218121634P</guid></item><item><title>Updated Wiki: Programmatically Add RibbonButtons Into Ribbon</title><link>http://ribbon.codeplex.com/wikipage?title=Programmatically Add RibbonButtons Into Ribbon&amp;version=2</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Programmatically Add RibbonButtons Into Ribbon&lt;/h1&gt;
&lt;p&gt;&lt;em&gt;&lt;/p&gt;
&lt;hr&gt;
This tip is contributed by &lt;a href="http://www.codeproject.com/script/Membership/View.aspx?mid=1617549"&gt;
Franziska&lt;/a&gt;.&lt;/em&gt;&lt;br&gt;
&lt;em&gt;&lt;a href="http://www.codeproject.com/Messages/4454699/Re-Programmatically-add-Buttons-to-a-Panel-or-set-.aspx"&gt;http://www.codeproject.com/Messages/4454699/Re-Programmatically-add-Buttons-to-a-Panel-or-set-.aspx&lt;/a&gt;&lt;/em&gt;
&lt;p&gt;&lt;/p&gt;
&lt;p&gt;&amp;nbsp;&lt;/p&gt;
&lt;p&gt;To add a ribbon button programmatically into a ribbon, after create the Item/Button or whatever you want to add to the RibbonPanel, add it immediately after creating it, then set the Text/Images an DO NOT use SetBounds, the it measures the required size
 for itself.&lt;br&gt;
&lt;br&gt;
Example:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;This is correct&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;RibbonButton rbBtn =  &lt;span style="color:blue"&gt;new&lt;/span&gt; RibbonButton(&lt;span style="color:#a31515"&gt;&amp;quot;Button1&amp;quot;&lt;/span&gt;);
&lt;span style="color:green"&gt;// below line must be added here&lt;/span&gt;
ribbonPanel2.Items.Add(rbBtn);
&lt;span style="color:green"&gt;// Then, you can change any properties after that&lt;/span&gt;
&lt;span style="color:green"&gt;// Examples of properties changes:&lt;/span&gt;
rbBtn.Image = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.SmallImage = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.Text = &lt;span style="color:#a31515"&gt;&amp;quot;My Dynamic Added Button&amp;quot;&lt;/span&gt;;
&lt;span style="color:green"&gt;// Don't add the button into panel here&lt;/span&gt;
&lt;span style="color:green"&gt;// ribbonPanel2.Items.Add(rbBtn);&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;This is wrong&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;RibbonButton rbBtn =  &lt;span style="color:blue"&gt;new&lt;/span&gt; RibbonButton(&lt;span style="color:#a31515"&gt;&amp;quot;Button1&amp;quot;&lt;/span&gt;);
rbBtn.Image = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.SmallImage = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.Text = &lt;span style="color:#a31515"&gt;&amp;quot;My Dynamic Added Button&amp;quot;&lt;/span&gt;;
ribbonPanel2.Items.Add(rbBtn);
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Tue, 18 Dec 2012 12:12:22 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Programmatically Add RibbonButtons Into Ribbon 20121218121222P</guid></item><item><title>Updated Wiki: How to Display Tool Tip</title><link>http://ribbon.codeplex.com/wikipage?title=How to Display Tool Tip&amp;version=2</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;How to Display Tool Tip&lt;/h1&gt;
&lt;p&gt;This is a temporary workout. To display a tool tip, you have to manually create it. Below code will show you how is it be done.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Example 1:&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1 : Form
{
    ToolTip tip = &lt;span style="color:blue"&gt;new&lt;/span&gt; ToolTip();
    &lt;span style="color:blue"&gt;public&lt;/span&gt; Form1()
    {
        InitializeComponent();
        ribbonButton1.MouseEnter &amp;#43;= &lt;span style="color:blue"&gt;new&lt;/span&gt; MouseEventHandler(ribbonButton1_MouseEnter);
        ribbonButton2.MouseEnter &amp;#43;= &lt;span style="color:blue"&gt;new&lt;/span&gt; MouseEventHandler(ribbonButton2_MouseEnter);
    }
 
    &lt;span style="color:blue"&gt;void&lt;/span&gt; ribbonButton2_MouseEnter(&lt;span style="color:blue"&gt;object&lt;/span&gt; sender, MouseEventArgs e)
    {
        tip.Show(&lt;span style="color:#a31515"&gt;&amp;quot;ribbonButton2, this is.&amp;quot;&lt;/span&gt;, &lt;span style="color:blue"&gt;this&lt;/span&gt;, e.Location.X, e.Location.Y, 1000);
    }
 
    &lt;span style="color:blue"&gt;void&lt;/span&gt; ribbonButton1_MouseEnter(&lt;span style="color:blue"&gt;object&lt;/span&gt; sender, MouseEventArgs e)
    {
        tip.Show(&lt;span style="color:#a31515"&gt;&amp;quot;This is ribbonButton1&amp;quot;&lt;/span&gt;, &lt;span style="color:blue"&gt;this&lt;/span&gt;, e.Location.X, e.Location.Y, 1000);
    }
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;Example 2:&lt;/strong&gt; &lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;&lt;span style="color:blue"&gt;public&lt;/span&gt; &lt;span style="color:blue"&gt;partial&lt;/span&gt; &lt;span style="color:blue"&gt;class&lt;/span&gt; Form1 : Form
{
    &lt;span style="color:blue"&gt;object&lt;/span&gt; _ob;
    Timer timer1 = &lt;span style="color:blue"&gt;new&lt;/span&gt; Timer();
 
    &lt;span style="color:blue"&gt;public&lt;/span&gt; Form1()
    {
        InitializeComponent();
        timer1.Interval = 500;
        timer1.Tick &amp;#43;= &lt;span style="color:blue"&gt;new&lt;/span&gt; EventHandler(timer1_Tick);
        ribbonButton1.ToolTip = &lt;span style="color:#a31515"&gt;&amp;quot;This is ribbonButton1.&amp;quot;&lt;/span&gt;;
        ribbonButton1.MouseEnter &amp;#43;= &lt;span style="color:blue"&gt;new&lt;/span&gt; MouseEventHandler(ribbonButton1_MouseEnter);
        ribbonButton1.MouseLeave &amp;#43;= &lt;span style="color:blue"&gt;new&lt;/span&gt; MouseEventHandler(ribbonButton1_MouseLeave);
    }
 
    &lt;span style="color:blue"&gt;void&lt;/span&gt; ribbonButton1_MouseLeave(&lt;span style="color:blue"&gt;object&lt;/span&gt; sender, MouseEventArgs e)
    {
        timer1.Stop();
    }
 
    &lt;span style="color:blue"&gt;void&lt;/span&gt; ribbonButton1_MouseEnter(&lt;span style="color:blue"&gt;object&lt;/span&gt; sender, MouseEventArgs e)
    {
        _ob = sender;
        timer1.Start();
    }
 
    &lt;span style="color:blue"&gt;void&lt;/span&gt; timer1_Tick(&lt;span style="color:blue"&gt;object&lt;/span&gt; sender, EventArgs e)
    {
        timer1.Stop();
        &lt;span style="color:blue"&gt;if&lt;/span&gt; (_ob == &lt;span style="color:blue"&gt;null&lt;/span&gt;)
            &lt;span style="color:blue"&gt;return&lt;/span&gt;;
 
        &lt;span style="color:blue"&gt;int&lt;/span&gt; x = 40;
        &lt;span style="color:blue"&gt;int&lt;/span&gt; y = 100; 
 
        &lt;span style="color:blue"&gt;if&lt;/span&gt; (_ob.GetType() == &lt;span style="color:blue"&gt;typeof&lt;/span&gt;(RibbonButton))
        {
            ToolTip tp = &lt;span style="color:blue"&gt;new&lt;/span&gt; ToolTip();
            tp.Show(((RibbonButton)_ob).ToolTip, &lt;span style="color:blue"&gt;this&lt;/span&gt;, x, y, 1000);
        }
    }
}
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;/p&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Tue, 18 Dec 2012 12:09:29 GMT</pubDate><guid isPermaLink="false">Updated Wiki: How to Display Tool Tip 20121218120929P</guid></item><item><title>Updated Wiki: Documentation</title><link>http://ribbon.codeplex.com/documentation?version=50</link><description>&lt;div class="wikidoc"&gt;&lt;h2&gt;Content:&lt;/h2&gt;&lt;ul&gt;&lt;li&gt;How to Use This  Ribbon Control
&lt;ul&gt;&lt;li&gt;Cautious while using with &lt;b&gt;Visual Studio 2010&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;How to(s)
&lt;ul&gt;&lt;li&gt;&lt;a href="http://ribbon.codeplex.com/wikipage?title=How%20to%20Apply%20Keyboard%20Shortcuts&amp;referringTitle=Documentation"&gt;How to Apply Keyboard Shortcuts&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ribbon.codeplex.com/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;#38; 4.0&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ribbon.codeplex.com/wikipage?title=How%20to%20Display%20Tool%20Tip&amp;referringTitle=Documentation"&gt;How to Display Tool Tip&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ribbon.codeplex.com/wikipage?title=Programmatically%20Add%20RibbonButtons%20Into%20Ribbon&amp;referringTitle=Documentation"&gt;Programmatically Add RibbonButtons Into Ribbon&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ribbon.codeplex.com/wikipage?title=How%20to%20Make%20a%20New%20Theme%2c%20Skin%20for%20this%20Ribbon%20Programmatically&amp;referringTitle=Documentation"&gt;How to Make a New Theme, Skin for this Ribbon Programmatically&lt;/a&gt; (Change color of each elements)&lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;Troubleshooting/Bugs Fix
&lt;ul&gt;&lt;li&gt;&lt;b&gt;GloboHook.cs&lt;/b&gt; Fix/Exceptions &lt;a href="http://ribbon.codeplex.com/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;Ribbon is slowing down application&lt;/a&gt; &lt;/li&gt;&lt;/ul&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="http://ribbon.codeplex.com/wikipage?title=Using%20Ribbon%20wtih%20MDI%20%28Multi%20Document%20Interface%29&amp;referringTitle=Documentation"&gt;Using Ribbon wtih MDI &amp;#40;Multi Document Interface&amp;#41;&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
Note: There are some more bugs fix at the Discussions Section shared by other user.&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;This ribbon will be continue to develop and it is now move to a new site. If you would like to contribute your codes and efforts to make this a better ribbon, or you wish obtain newer ribbon fix or upgrade, you may visit this project: &lt;a href="http://officeribbon.codeplex.com/"&gt;http://officeribbon.codeplex.com/&lt;/a&gt;, &lt;a href="http://www.staffinder.net/carbisoft/"&gt;http://www.staffinder.net/carbisoft/&lt;/a&gt;&lt;br /&gt;See discussion &amp;gt;&amp;gt; &lt;a href="http://ribbon.codeplex.com/discussions/280319"&gt;Office 2010 Style Orb, Tooltips, and a Minimize Feature&lt;/a&gt;&lt;br /&gt;Some bugs in this ribbon were fixed and features are extended.&lt;br /&gt;
&lt;h1&gt;How to Use This Ribbon Control&lt;/h1&gt;
1. Download the Ribbon Source and obtain &lt;b&gt;System.Windows.Forms.Ribbon.dll&lt;/b&gt; at &lt;b&gt;Download&lt;/b&gt; page of this project.&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Note:&lt;/b&gt; &lt;u&gt;&lt;b&gt;&lt;i&gt;To develop with .NET Framework 3.5 &amp;amp; 4.0.&lt;/i&gt;&lt;/b&gt;&lt;/u&gt;&lt;br /&gt;&lt;i&gt;The original develop platform of this ribbon is .NET Framework 2.0. To use this ribbon in .NET Framework 3.5 or 4.0, please read this:&lt;/i&gt; &lt;i&gt;&lt;a href="http://ribbon.codeplex.com/wikipage?title=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0&amp;referringTitle=Documentation"&gt;How to Obtain DLL for .NET Framework 3.5 &amp;#38; 4.0&lt;/a&gt;&lt;/i&gt;&lt;br /&gt;&lt;br /&gt;2. Create a blank WinForm Project.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366164" alt="01.png" title="01.png" /&gt;&lt;br /&gt;&lt;br /&gt;3. Adding Ribbon into Form.&lt;br /&gt;There are 2 methods to add the Ribbon into the Form.&lt;br /&gt;&lt;br /&gt;1st method: Using Code to add it.&lt;br /&gt;2nd method: Drag and Drop&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;1st Method: Using Code to add it.&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;3.1.1. Add a Reference of &lt;b&gt;System.Windows.Forms.Ribbon.dll&lt;/b&gt; to your project.&lt;br /&gt;3.1.2. Right click on &lt;b&gt;Reference&lt;/b&gt; at the &lt;b&gt;Solution Explorer&lt;/b&gt;, choose &lt;b&gt;Add&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366165" alt="02.png" title="02.png" /&gt;&lt;br /&gt;&lt;br /&gt;3.1.3. Locate the &lt;b&gt;System.Windows.Forms.Ribbon.dll&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366166" alt="03.png" title="03.png" /&gt;&lt;br /&gt;&lt;br /&gt;3.1.4. Open the designer of the Main Form. In this example, &lt;b&gt;Form1.Designer.cs&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366167" alt="04.png" title="04.png" /&gt;&lt;br /&gt;&lt;br /&gt;3.1.5. This is the initial code for &lt;b&gt;Form1.Designer.cs&lt;/b&gt;:&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
namespace WindowsFormsApplication1
{
    partial class Form1
    {
        /// &amp;lt;summary&amp;gt;
        /// Required designer variable.
        /// &amp;lt;/summary&amp;gt;
        private System.ComponentModel.IContainer components = null;

        /// &amp;lt;summary&amp;gt;
        /// Clean up any resources being used.
        /// &amp;lt;/summary&amp;gt;
        /// &amp;lt;param name=&amp;quot;disposing&amp;quot;&amp;gt;true if managed resources should be disposed; otherwise, false.&amp;lt;/param&amp;gt;
        protected override void Dispose(bool disposing)
        {
            if (disposing &amp;amp;&amp;amp; (components != null))
            {
                components.Dispose();
            }
            base.Dispose(disposing);
        }

        #region Windows Form Designer generated code

        /// &amp;lt;summary&amp;gt;
        /// Required method for Designer support - do not modify
        /// the contents of this method with the code editor.
        /// &amp;lt;/summary&amp;gt;
        private void InitializeComponent()
        {
            this.components = new System.ComponentModel.Container();
            this.AutoScaleMode = System.Windows.Forms.AutoScaleMode.Font;
            this.Text = &amp;quot;Form1&amp;quot;;
        }

        #endregion
    }
}
&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;3.1.6. Add three lines of code into &lt;b&gt;Form1.Designer.cs&lt;/b&gt;.&lt;br /&gt;&lt;pre&gt;
private System.Windows.Forms.Ribbon ribbon1;
this.ribbon1 = new System.Windows.Forms.Ribbon();
this.Controls.Add(this.ribbon1); 
&lt;/pre&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366168" alt="05.png" title="05.png" /&gt;&lt;br /&gt;&lt;br /&gt;3.1.7. Save and close &lt;b&gt;Form1.Designer.cs&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;3.1.8. Double click and open &lt;b&gt;Form1.cs&lt;/b&gt;, and now the Ribbon control is added into the main form.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366169" alt="06.png" title="06.png" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366170" alt="07.png" title="07.png" /&gt;&lt;br /&gt;&lt;br /&gt;&lt;br /&gt;&lt;b&gt;&lt;u&gt;2nd Method: Drag and Drop&lt;/u&gt;&lt;/b&gt;&lt;br /&gt;&lt;br /&gt;3.2. 2nd Method: Drag and Drop&lt;br /&gt;&lt;br /&gt;3.2.1. This is more simpler way to add the ribbon into the form. Just simply create a new tab at Toolbox. 3.2.2. Drag and drop the DLL into the new tab. &lt;br /&gt;3.2.3. Click on any area of Toolbox. Right click &amp;gt; Add Tab. &lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=367553" alt="a1.png" title="a1.png" /&gt;&lt;br /&gt;&lt;br /&gt;3.2.4. Give the new tab a name.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=367554" alt="a2.png" title="a2.png" /&gt;&lt;br /&gt;&lt;br /&gt;3.2.5. Drag the DLL into the new tab area.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=367555" alt="a3.png" title="a3.png" /&gt;&lt;br /&gt;&lt;br /&gt;3.2.6. Drag the Ribbon into the Form. Thats it. &lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=367556" alt="a4.png" title="a4.png" /&gt;&lt;br /&gt;&lt;br /&gt;And this will automatically add a reference of &lt;b&gt;System.Windows.Forms.Ribbon&lt;/b&gt; for you. &lt;br /&gt;&lt;br /&gt;&lt;br /&gt;4. Click on the Ribbon and Click &lt;b&gt;Add Tab&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366171" alt="08.png" title="08.png" /&gt;&lt;br /&gt;&lt;br /&gt;5. Click on the newly added &lt;b&gt;RibbonTab&lt;/b&gt;, then click &lt;b&gt;Add Panel&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366172" alt="09.png" title="09.png" /&gt;&lt;br /&gt;&lt;br /&gt;6. Click on the newly added &lt;b&gt;RibbonPanel&lt;/b&gt;, go to &lt;b&gt;Properties&lt;/b&gt;. A set of available controls that can be added to the &lt;b&gt;RibbonPanel&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366182" alt="10.png" title="10.png" /&gt;&lt;br /&gt;&lt;br /&gt;7. Try add some buttons into the &lt;b&gt;RibbonPanel&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;8. Click on the &lt;b&gt;RibbonButtons&lt;/b&gt;, go to &lt;b&gt;Properties&lt;/b&gt;. Lets try to change the image and the label text of the button.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366185" alt="13.png" title="13.png" /&gt;&lt;br /&gt;&lt;br /&gt;9. This is how your ribbon looks like now.&lt;br /&gt;10. Now, create the click event for the buttons. Click on the &lt;b&gt;RibbonButton&lt;/b&gt;, go to &lt;b&gt;Properties&lt;/b&gt;, modify the &lt;b&gt;Name&lt;/b&gt; of the button.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366183" alt="11.png" title="11.png" /&gt;&lt;br /&gt;&lt;br /&gt;11. Open the code of &lt;b&gt;Form1.cs&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;12. This is what we have initially:&lt;br /&gt;&lt;pre&gt;
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;

namespace WindowsFormsApplication1
{
    public partial class Form1 : Form
    {
        public Form1()
        {
            InitializeComponent();
        }
    }
}

&lt;/pre&gt;&lt;br /&gt;&lt;br /&gt;13. Add the &lt;b&gt;Button Clicked&lt;/b&gt; event for the &lt;b&gt;RibbonButton&lt;/b&gt;.&lt;br /&gt;&lt;pre&gt;
public Form1()
{
    InitializeComponent();
    cmdNew.Click += new EventHandler(cmdNew_Click);
    cmdSave.Click += new EventHandler(cmdSave_Click);
}

void cmdNew_Click(object sender, EventArgs e)
{
    MessageBox.Show(&amp;quot;Button \&amp;quot;New\&amp;quot; Clicked.&amp;quot;);
}

void cmdSave_Click(object sender, EventArgs e)
{
    MessageBox.Show(&amp;quot;Button \&amp;quot;Save\&amp;quot; Clicked.&amp;quot;);
}
&lt;/pre&gt;&lt;br /&gt;14. Press &lt;b&gt;F5&lt;/b&gt; to run the application. Done.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366184" alt="12.png" title="12.png" /&gt;&lt;br /&gt;&lt;br /&gt;15. You might want to inherit your &lt;b&gt;Main Form&lt;/b&gt; into a &lt;b&gt;RibbonForm&lt;/b&gt; to have extra feature. Such as:&lt;br /&gt;Note: Inherit the &lt;b&gt;Main Form&lt;/b&gt; to &lt;b&gt;RibbonForm&lt;/b&gt; will have some compatible problems with some of &lt;b&gt;System.Windows.Forms&lt;/b&gt; controls.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366214" alt="14.png" title="14.png" /&gt;&lt;br /&gt;&lt;br /&gt;16. At the code of &lt;b&gt;Form1.cs&lt;/b&gt;, change this line:&lt;br /&gt;&lt;pre&gt;
public partial class Form1 : Form
&lt;/pre&gt;&lt;br /&gt;to this line:&lt;br /&gt;&lt;pre&gt;
public partial class Form1 : RibbonForm
&lt;/pre&gt;&lt;br /&gt;Here is the sample project explain above: &lt;br /&gt;Download: &lt;a href="http://www.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=366215"&gt;RibbonSample.zip&lt;/a&gt;&lt;br /&gt;
&lt;hr /&gt;

&lt;h1&gt;Cautious While Using With Visual Studio 2010&lt;/h1&gt;
&lt;b&gt;ALWAYS SAVE AND CLOSE&lt;/b&gt; straight away after you have finished designing the GUI editing of &lt;b&gt;Main Form&lt;/b&gt; (The form that contains the ribbon control).&lt;br /&gt;&lt;br /&gt;&lt;b&gt;Don&amp;#39;t Run (Press F5)&lt;/b&gt; The Application while the &lt;b&gt;Main Form&lt;/b&gt; is open in &lt;b&gt;Visual Studio 2010&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;Or else, you might experience that the ribbon control has disappeared. You will end up redesigning/redraw the ribbon and reconnect all the events that associated with the ribbon.&lt;br /&gt;
&lt;hr /&gt;
&lt;br /&gt;Before using the ribbon, you have to patch the GlobalHook.cs.&lt;br /&gt;&lt;br /&gt;There are some workout for this, please read this: &lt;a href="http://ribbon.codeplex.com/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=Documentation"&gt;Ribbon is slowing down application&lt;/a&gt;&lt;br /&gt;
&lt;hr /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Tue, 18 Dec 2012 12:06:50 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Documentation 20121218120650P</guid></item><item><title>Updated Wiki: Programmatically Add RibbonButtons Into Ribbon</title><link>http://ribbon.codeplex.com/wikipage?title=Programmatically Add RibbonButtons Into Ribbon&amp;version=1</link><description>&lt;div class="wikidoc"&gt;
&lt;h1&gt;Programmatically Add RibbonButtons Into Ribbon&lt;/h1&gt;
&lt;p&gt;To add a ribbon button programmatically into a ribbon, after create the Item/Button or whatever you want to add to the RibbonPanel, add it immediately after creating it, then set the Text/Images an DO NOT use SetBounds, the it measures the required size
 for itself.&lt;br&gt;
&lt;br&gt;
Example:&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;This is correct&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;RibbonButton rbBtn =  &lt;span style="color:blue"&gt;new&lt;/span&gt; RibbonButton(&lt;span style="color:#a31515"&gt;&amp;quot;Button1&amp;quot;&lt;/span&gt;);
&lt;span style="color:green"&gt;// below line must be added here&lt;/span&gt;
ribbonPanel2.Items.Add(rbBtn);
&lt;span style="color:green"&gt;// Then, you can change any properties after that&lt;/span&gt;
&lt;span style="color:green"&gt;// Examples of properties changes:&lt;/span&gt;
rbBtn.Image = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.SmallImage = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.Text = &lt;span style="color:#a31515"&gt;&amp;quot;My Dynamic Added Button&amp;quot;&lt;/span&gt;;
&lt;span style="color:green"&gt;// Don't add the button into panel here&lt;/span&gt;
&lt;span style="color:green"&gt;// ribbonPanel2.Items.Add(rbBtn);&lt;/span&gt;
&lt;/pre&gt;
&lt;/div&gt;
&lt;p&gt;&lt;strong&gt;This is wrong&lt;/strong&gt;&lt;/p&gt;
&lt;div style="color:black; background-color:white"&gt;
&lt;pre&gt;RibbonButton rbBtn =  &lt;span style="color:blue"&gt;new&lt;/span&gt; RibbonButton(&lt;span style="color:#a31515"&gt;&amp;quot;Button1&amp;quot;&lt;/span&gt;);
rbBtn.Image = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.SmallImage = global::RibbonTest.Properties.Resources.fileopen;
rbBtn.Text = &lt;span style="color:#a31515"&gt;&amp;quot;My Dynamic Added Button&amp;quot;&lt;/span&gt;;
ribbonPanel2.Items.Add(rbBtn);
&lt;/pre&gt;
&lt;/div&gt;
&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Tue, 18 Dec 2012 12:04:58 GMT</pubDate><guid isPermaLink="false">Updated Wiki: Programmatically Add RibbonButtons Into Ribbon 20121218120458P</guid></item><item><title>New Comment on "Documentation"</title><link>http://ribbon.codeplex.com/documentation?&amp;ANCHOR#C24793</link><description>Does it work with Visual Basic Express rel.8 or 10&amp;#63;&amp;#10;If so where iss the code&amp;#63;&amp;#10;&amp;#10;Jo&amp;#227;o</description><author>jcmatoso</author><pubDate>Thu, 23 Aug 2012 11:38:28 GMT</pubDate><guid isPermaLink="false">New Comment on "Documentation" 20120823113828A</guid></item><item><title>Updated Wiki: How to Obtain DLL for .NET Framework 3.5 &amp; 4.0</title><link>http://ribbon.codeplex.com/wikipage?title=How to Obtain DLL for .NET Framework 3.5 &amp; 4.0&amp;version=18</link><description>&lt;div class="wikidoc"&gt;&lt;h1&gt;How to Obtain DLL for .NET Framework 3.5 &amp;amp; 4.0&lt;/h1&gt;You can either convert the original source project of this ribbon from .NET Framework 2.0 to 3.5 or 4.0, or create a blank class project of .NET Framework 3.5/4.0.&lt;br /&gt;&lt;br /&gt;If you choose to create a blank class, add all .cs files from the source code of System.Forms.Ribbon into your class, and add additional reference of
&lt;ul&gt;&lt;li&gt;&lt;b&gt;System.Design&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;System.Drawing&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;b&gt;System.Windows.Forms&lt;/b&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;You have to modify &lt;b&gt;GlobalHook.cs&lt;/b&gt;. Refer Solution 1 explained here: &lt;a href="http://ribbon.codeplex.com/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0"&gt;Ribbon is slowing down application&lt;/a&gt;
&lt;ul&gt;&lt;li&gt;Find &lt;b&gt;private void InstallHook()&lt;/b&gt;&lt;/li&gt;
&lt;li&gt;&lt;del&gt;Add a &lt;b&gt;return&lt;/b&gt; statement at the beginning of the method so nothing is done.&lt;/del&gt; (These is a better fix than this).&lt;/li&gt;
&lt;li&gt;Please follow &lt;b&gt;Solution 1&lt;/b&gt; at here: &lt;a href="http://ribbon.codeplex.com/wikipage?title=Ribbon%20is%20slowing%20down%20application&amp;referringTitle=How%20to%20Obtain%20DLL%20for%20.NET%20Framework%203.5%20%26%204.0"&gt;Ribbon is slowing down application&lt;/a&gt;&lt;/li&gt;&lt;/ul&gt;
&lt;br /&gt;&lt;br /&gt;Next, please note that, at your new WinForm project, after the first build, the target framework will automatically switched to &lt;b&gt;Client Profile&lt;/b&gt;.&lt;br /&gt;&lt;br /&gt;For example, if you are building a .NET Framework 4.0, Visual Studio will initially switch your WinForm project to &lt;u&gt;&lt;b&gt;.NET Framework 4.0 Client Profile&lt;/b&gt;&lt;/u&gt;. You have to manually switched it back to &lt;b&gt;.NET Framework 4.0&lt;/b&gt;. This is because &lt;b&gt;Client Profile&lt;/b&gt; does not support &lt;b&gt;System.Design&lt;/b&gt; which required by the Ribbon to build and run. System.Design is used by Ribbon internally.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=369864" alt="dotnet4.png" title="dotnet4.png" /&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Sun, 03 Jun 2012 10:31:39 GMT</pubDate><guid isPermaLink="false">Updated Wiki: How to Obtain DLL for .NET Framework 3.5 &amp; 4.0 20120603103139A</guid></item><item><title>Updated Wiki: How to Apply Keyboard Shortcuts</title><link>http://ribbon.codeplex.com/wikipage?title=How to Apply Keyboard Shortcuts&amp;version=4</link><description>&lt;div class="wikidoc"&gt;&lt;h1&gt;How to Apply Keyboard Shortcuts&lt;/h1&gt;
Shortcut keys can be executed by using a hidden menu strip.&lt;br /&gt;&lt;br /&gt;Create a Menu Strip, add some menu items and assign some shortcut keys to the items.&lt;br /&gt;&lt;br /&gt;&lt;img src="http://i3.codeplex.com/Download?ProjectName=Ribbon&amp;DownloadId=384644" alt="01.png" title="01.png" /&gt;&lt;br /&gt;&lt;br /&gt;Below are some of the examples that you can use to associate the menu items&amp;#39; shorcut key to the Ribbon Buttons.&lt;br /&gt;&lt;br /&gt;&lt;pre&gt;
public partial class Form1 : Form
{
    public Form1()
    {
        InitializeComponent();
    }

    private void ribbonButton1_Click(object sender, EventArgs e)
    {
        MessageBox.Show(&amp;quot;Ribbon button 1 clicked&amp;quot;);
    }

    private void ribbonButton2_Click(object sender, EventArgs e)
    {
        menuItem2ToolStripMenuItem.PerformClick();
    }

    private void ribbonButton3_Click(object sender, EventArgs e)
    {
        Function3();
    }

    private void Function3()
    {
        MessageBox.Show(&amp;quot;Function 3 launched&amp;quot;);
    }

    private void menuItem1ToolStripMenuItem_Click(object sender, EventArgs e)
    {
        ribbonButton1.PerformClick();
    }

    private void menuItem2ToolStripMenuItem_Click(object sender, EventArgs e)
    {
        MessageBox.Show(&amp;quot;Menu Item 2 clicked.&amp;quot;);
    }

    private void menuItem3ToolStripMenuItem_Click(object sender, EventArgs e)
    {
        Function3();
    }
}
&lt;/pre&gt;&lt;/div&gt;&lt;div class="ClearBoth"&gt;&lt;/div&gt;</description><author>adriancs</author><pubDate>Fri, 01 Jun 2012 03:24:06 GMT</pubDate><guid isPermaLink="false">Updated Wiki: How to Apply Keyboard Shortcuts 20120601032406A</guid></item></channel></rss>