<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://windowsclient.net/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:media="http://search.yahoo.com/mrss/" xmlns:evnet="http://www.mscommunities.com/rssmodule/"><channel><title>Windows Forms FAQs</title><link>http://windowsclient.net/blogs/faqs/default.aspx</link><description>Here are some frequently asked questions about Windows Forms and their answers.</description><dc:language>en</dc:language><generator>CommunityServer 2007 (Build: 20423.869)</generator><item><title>How can I bind a list of items to entries in a ToolStripDropDown?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/13/how-can-i-bind-a-list-of-items-to-entries-in-a-toolstripdropdown.aspx</link><pubDate>Fri, 14 Jul 2006 03:22:27 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1221</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Several people have asked on the newsgroups about a good method to bind a list of items to entries in a ToolStripDropDown instance.&amp;nbsp; I&amp;#39;ve run into this issue a couple of times and wanted to share some sample code.&amp;nbsp; &lt;/p&gt;
&lt;p&gt;The class takes in a ToolStripDropDown instance.&amp;nbsp; You can then set the data source to any IEnumerable collection.&amp;nbsp; Whenever the data in the list changes, call ReloadFromSource().&amp;nbsp; Or alternately, if the list implements IBindingList then it will automatically update.&amp;nbsp; &lt;/p&gt;&lt;font size="2"&gt;&lt;/font&gt;&lt;pre&gt;Imports System.ComponentModel

Public Class DropDownBinding
    Private m_dd As ToolStripDropDown
    Private m_list As IEnumerable
    Private m_bindingList As IBindingList

    Public Sub New(ByVal dd As ToolStripDropDown)
        m_dd = dd
        m_list = New List(Of Object)()
    End Sub

    Public Sub SetDataSource(ByVal e As IEnumerable)
        If Not m_bindingList Is Nothing Then
            RemoveHandler m_bindingList.ListChanged, New ListChangedEventHandler(AddressOf Me.OnListChanged)
        End If

        m_bindingList = TryCast(e, IBindingList)
        m_list = e

        If Not m_bindingList Is Nothing Then
            AddHandler m_bindingList.ListChanged, New ListChangedEventHandler(AddressOf Me.OnListChanged)
        End If

        RebuildList()
    End Sub

    Public Sub ReloadFromSource()
        RebuildList()
    End Sub

    Private Sub OnListChanged(ByVal sender As Object, ByVal e As ListChangedEventArgs)
        RebuildList()
    End Sub

    Private Sub RebuildList()
        m_dd.Items.Clear()

        For Each cur As Object In m_list
            m_dd.Items.Add(cur.ToString())
        Next
    End Sub
End Class&lt;/pre&gt;

&lt;p&gt;From &lt;a href="http://blogs.msdn.com/jaredpar/archive/2006/07/13/665101.aspx"&gt;Jared Parsons&lt;/a&gt;&lt;/p&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1221" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>225</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1221</evnet:viewtrackingurl></item><item><title>How can I reset the settings?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/how-can-i-reset-the-settings.aspx</link><pubDate>Wed, 12 Jul 2006 21:00:00 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1220</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The sample code below will do that – it simply uses a named
set of settings that captures the state before any custom settings are applied.
Then, with button click or whatever you can apply the custom set.&lt;/p&gt;

&lt;pre&gt;
private void Form1_Load(object sender, EventArgs e)
{
// save out a snapshop of init component
ToolStripManager.SaveSettings(this, &amp;quot;RESET&amp;quot;);

// load and apply settings last saved
ToolStripManager.LoadSettings(this);
}

private void newToolStripMenuItem_Click(object sender, EventArgs e)
{
// apply the RESET settings
ToolStripManager.LoadSettings(this, &amp;quot;RESET&amp;quot;);
}

private void Form1_FormClosing(object sender, FormClosingEventArgs e)
{
// Save out current state of ToolStrips
ToolStripManager.SaveSettings(this);
}&lt;/pre&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1220" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>224</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1220</evnet:viewtrackingurl></item><item><title>How do I programatically move ToolStrips within or across ToolStripPanels?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/how-do-i-programatically-move-toolstrips-within-or-across-toolstrippanels.aspx</link><pubDate>Wed, 12 Jul 2006 20:58:01 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1217</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;b&gt;Within a ToolStrip:&lt;/b&gt;

&lt;p&gt;Simply set the ToolStrip Location property. &lt;/p&gt;

&lt;b&gt;Across ToolStrips:&lt;/b&gt;

&lt;p&gt;Either add the ToolStrip to the ToolStripPanel&amp;#39;s Controls collection
or use Join(ToolStrip). &lt;/p&gt;

&lt;p&gt;NOTE: Join() simulates the drop operation of a ToolStrip and
is order dependent.&lt;/p&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1217" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>223</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1217</evnet:viewtrackingurl></item><item><title>How can I use the ToolStripPanel with MDI applications?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/how-can-i-use-the-toolstrippanel-with-mdi-applications.aspx</link><pubDate>Wed, 12 Jul 2006 20:57:40 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1216</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The following is how to use ToolStripPanels correctly in an MDIParent.
This is important, because due to layering and MDI limiations, use of ToolStripContainer
doesn&amp;#39;t work well.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;pre&gt;  public Form1()
  {
   // Make Form MDI Parent
   this.IsMdiContainer = true;

   // Add toolstrip panels
   ToolStripPanel tspTop = new ToolStripPanel();
   ToolStripPanel tspBottom = new ToolStripPanel();
   ToolStripPanel tspLeft = new ToolStripPanel();
   ToolStripPanel tspRight = new ToolStripPanel();

   // dock the ToolStripPanels
   tspTop.Dock = DockStyle.Top;
   tspBottom.Dock = DockStyle.Bottom;
   tspLeft.Dock = DockStyle.Left;
   tspRight.Dock = DockStyle.Right;

   // add toolstrips to move around between the panels
   ToolStrip tsTop = new ToolStrip();
   tsTop.Items.Add(&amp;quot;Top&amp;quot;);
   tspTop.Join(tsTop);

   ToolStrip tsBottom = new ToolStrip();
   tsBottom.Items.Add(&amp;quot;Bottom&amp;quot;);
   tspBottom.Join(tsBottom);

   ToolStrip tsRight = new ToolStrip();
   tsRight.Items.Add(&amp;quot;Right&amp;quot;);
   tspRight.Join(tsRight);

   ToolStrip tsLeft = new ToolStrip();
   tsLeft.Items.Add(&amp;quot;Left&amp;quot;);
   tspLeft.Join(tsLeft);

   // add menustrip, with new window
   MenuStrip ms = new MenuStrip();
   ToolStripMenuItem windowMenu = new ToolStripMenuItem(&amp;quot;Window&amp;quot;);
   ToolStripMenuItem windowNewMenu = new ToolStripMenuItem(&amp;quot;New&amp;quot;, null, new EventHandler(windowNewMenu_Click));
   windowMenu.DropDownItems.Add(windowNewMenu);
   ((ToolStripDropDownMenu)(windowMenu.DropDown)).ShowImageMargin = false;
   ((ToolStripDropDownMenu)(windowMenu.DropDown)).ShowCheckMargin = true;

   ms.MdiWindowListItem = windowMenu;

   ms.Items.Add(windowMenu);
   ms.Dock = DockStyle.Top;

   // Form.MainMenuStrip determines merge target
   MainMenuStrip = ms;

   // add a button to the MDIClient area
   Button b = new Button();
   b.AutoSize = true;
   b.Text = &amp;quot;In the MDI Container&amp;quot;;

   // Add the ToolStripPanels to the form in reverse order
   this.Controls.Add(tspRight);
   this.Controls.Add(tspLeft);
   this.Controls.Add(tspBottom);
   this.Controls.Add(tspTop);

   // add menustrip last - Z order!
   this.Controls.Add(ms);

  }

  void windowNewMenu_Click(object sender, EventArgs e)
  {
   Form f = new Form();
   f.MdiParent = this;
   f.Text = &amp;quot;Form - &amp;quot; + this.MdiChildren.Length.ToString();
   f.Show();

  }
&amp;nbsp;}&lt;/pre&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1216" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>220</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1216</evnet:viewtrackingurl></item><item><title>Why does the ToolStripContainer not support MDI?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/why-does-the-toolstripcontainer-not-support-mdi.aspx</link><pubDate>Wed, 12 Jul 2006 20:57:08 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1213</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;ToolStripContainer does not support MDI properly because, like
any dock filled container, it would be layered above the MDI child container that
is part of the MDI parent. To workaround this, use ToolStripPanel – see that section
for a code example.&lt;/p&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1213" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>220</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1213</evnet:viewtrackingurl></item><item><title>What is the ToolStripContainer?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/what-is-the-toolstripcontainer.aspx</link><pubDate>Wed, 12 Jul 2006 20:56:46 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1212</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;ToolStrip container is a composite control very similar in overall
design to the SplitContainer. It takes four ToolStripPanels docked to the sides
and one ContentPanel dock filled in the middle to make up the typical four sided
arrangment commonly used today. Below are some quick notes on ToolStripContainer
parts.&lt;/p&gt;

&lt;b&gt;Sides – ToolStripPanels&lt;/b&gt;

&lt;p&gt;The ToolStripPanels on the sides are not removable from the the
container, but can be hidden via their respective visible property(Top -&amp;gt; TopToolStripPanelVisble,
etc). Visible false means they would not participate in the drag to dock scnearions.
&lt;/p&gt;

&lt;pre&gt;// to hide left and right panels
toolStripContainer1.LeftToolStripPanelVisible = false;
toolStripContainer1.RightToolStripPanelVisible = false;&lt;/pre&gt;
&lt;b&gt;Center – ContentPanel&lt;/b&gt;

&lt;p&gt;The Content panel provides a way to get Renderer support into
the body of your form to create a consistent look. It cannot be hidden. It does
supports transparency and backcolor, but it may be prudent in many scenarios that
require this to dock ToolStripPanels to the side instead.&lt;/p&gt;

&lt;b&gt;Design Time&lt;/b&gt;

&lt;p&gt;ToolStripContainer offers several design time features not found
on other controls. Below is a description of a few of these.&lt;/p&gt;

&lt;b&gt;Expando handles&lt;/b&gt;

&lt;p&gt;On each ToolStripPanel we offer a handle to temporarily expand
the ToolStripPanel to ease rearrangement of ToolStrips and enlarge the drop area.
These are not rendered at runtime.&lt;/p&gt;

&lt;b&gt;Reparent Controls&lt;/b&gt;

&lt;p&gt;A designer verb, also shown on the Designer Action panel, is
Reparent controls. This takes all controls on the form and reparents them to the
ToolStripContainer. All ToolStrips are mapped into the ToolStripPanels and all other
controls parented to the form are reparented to the ContentPanel.&lt;/p&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1212" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>218</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1212</evnet:viewtrackingurl></item><item><title>How can I disable Visual Styles?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/how-can-i-disable-visual-styles.aspx</link><pubDate>Wed, 12 Jul 2006 20:56:22 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1209</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;The System Renderer renders ToolStrips similar to Win32 look
and feel. You can use with or without VisualStyles by &lt;/p&gt;

&lt;pre&gt;ToolStripManager.VisualStylesEnabled = false;&lt;/pre&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1209" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>217</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1209</evnet:viewtrackingurl></item><item><title>How can I get the Office look and feel to have straight ends?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/how-can-i-get-the-office-look-and-feel-to-have-straight-ends.aspx</link><pubDate>Wed, 12 Jul 2006 20:56:00 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1208</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Set RoundedEdges = false. You may also have to override OnRendererToolStripBorder
and not call base.&lt;/p&gt;

&lt;pre&gt;&amp;nbsp;((ToolStripProfessionalRenderer)ToolStripManager.Renderer).RoundedEdges = false;&lt;/pre&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1208" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>218</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1208</evnet:viewtrackingurl></item><item><title>How can I change text color on selection?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/how-can-i-change-text-color-on-selection.aspx</link><pubDate>Wed, 12 Jul 2006 20:55:40 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1205</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Below is an example of changing text color on selection within
a custom renderer:&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;pre&gt;protected override void OnRenderItemText(ToolStripItemTextRenderEventArgs e)
  {
  if (e.Item.Selected)
    {
       e.TextColor = Color.Gold;
    }
  else
    {
       e.Item.ForeColor = Color.White;
    }

  base.OnRenderItemText(e);
  }&lt;/pre&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1205" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>217</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1205</evnet:viewtrackingurl></item><item><title>What is the ConnectedArea?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/what-is-the-connectedarea.aspx</link><pubDate>Wed, 12 Jul 2006 20:55:22 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1204</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Connected area is that little bit of the dropdown for a menu
where the border is discontinuous. Below is an examples of how to access and paint
that.&lt;/p&gt;

&lt;pre&gt;
protected override void OnRenderToolStripBorder(ToolStripRenderEventArgs e)
{
    using (Brush b = new SolidBrush(ColorTable.MyBackgroundColor))
    {
        e.Graphics.FillRectangle(b, e.ConnectedArea);
    }
}&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1204" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>217</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1204</evnet:viewtrackingurl></item><item><title>How do I change the ProfessionalColorTable?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/how-do-i-change-the-professionalcolortable.aspx</link><pubDate>Wed, 12 Jul 2006 20:55:03 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1201</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Override ProfessionalColorTable and change only the colors you
care about.&lt;/p&gt;

&lt;pre&gt;  Private Sub Form1_Load(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Me.Load
     Dim t As MyColorTable = New MyColorTable
    ToolStrip1.Renderer = New ToolStripProfessionalRenderer(t)
  End Sub
  Class MyColorTable
    Inherits ProfessionalColorTable
    Public Overrides ReadOnly Property ButtonPressedGradientBegin() As Color
    Get
      Return Color.FromArgb(147, 210, 254)
    End Get
    End Property
    Public Overrides ReadOnly Property ButtonPressedGradientMiddle() As System.Drawing.Color
    Get
      Return Color.FromArgb(83, 132, 252)
    End Get
    End Property
    Public Overrides ReadOnly Property ButtonPressedGradientEnd() As System.Drawing.Color
    Get
      Return Color.FromArgb(18, 55, 250)
    End Get
    End Property
    Public Overrides ReadOnly Property ButtonSelectedGradientBegin() As Color
    Get
      Return Color.FromArgb(204, 227, 255)
    End Get
    End Property
    Public Overrides ReadOnly Property ButtonSelectedGradientMiddle() As System.Drawing.Color
    Get
      Return Color.FromArgb(160, 199, 255)
    End Get
    End Property
    Public Overrides ReadOnly Property ButtonSelectedGradientEnd() As System.Drawing.Color
    Get
      Return Color.FromArgb(116, 171, 255)
    End Get
    End Property
  End Class&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Below is an example of  Custom Professional Colors w/ built in
ProfessionalRenderer and setting Renderer at runtime.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;pre&gt;&amp;nbsp;class Form2 : Form
&amp;nbsp;{
  public Form2()
  {
   // new toolstrip
   ToolStrip ts = new ToolStrip();
   ts.Items.Add(&amp;quot;Apples&amp;quot;);
   ts.Items.Add(&amp;quot;Oranges&amp;quot;);
   ts.Items.Add(&amp;quot;Pears&amp;quot;);
   ts.Items.Add(&amp;quot;Change Colors&amp;quot;, null, new EventHandler(ChangeColors_Click));

   // new menustrip, with new window
   MenuStrip ms = new MenuStrip();
   ms.Dock = DockStyle.Top;

   // add top level items
   ms.Items.Add(&amp;quot;File&amp;quot;);
   ms.Items.Add(&amp;quot;Edit&amp;quot;);
   ms.Items.Add(&amp;quot;View&amp;quot;);
   ms.Items.Add(&amp;quot;Window&amp;quot;);

   // Add toolstrip to controls collection
   this.Controls.Add(ts);

   // Add menustrip to controls collection last - Z order!
   this.Controls.Add(ms);
  }

  void ChangeColors_Click(object sender, EventArgs e)
  {
   ToolStripManager.Renderer = new ToolStripProfessionalRenderer(new CustomProfessionalColors());
  }
&amp;nbsp;}

&amp;nbsp;class CustomProfessionalColors : ProfessionalColorTable
&amp;nbsp;{
  public override Color ToolStripGradientBegin
  { get { return Color.BlueViolet; } }

  public override Color ToolStripGradientMiddle
  { get { return Color.CadetBlue; } }

  public override Color ToolStripGradientEnd
  { get { return Color.CornflowerBlue; } }

  public override Color MenuStripGradientBegin
  { get { return Color.BlueViolet; } }

  public override Color MenuStripGradientEnd
  { get { return Color.CornflowerBlue; } }
&amp;nbsp;}&lt;/pre&gt;
&lt;p&gt;&lt;/p&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1201" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>215</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1201</evnet:viewtrackingurl></item><item><title>What order do the ToolStrip Renderer events come in?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/what-order-do-the-toolstrip-renderer-events-come-in.aspx</link><pubDate>Wed, 12 Jul 2006 20:54:37 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1200</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Generally its this - background, item background, item foregound
effects, toolstrip border.&lt;/p&gt;

&lt;ul&gt;
 &lt;li&gt;OnRenderToolStripBackground &lt;/li&gt;
 &lt;li&gt;OnRender[Label|Button|MenuItem...]Background &lt;/li&gt;
 &lt;li&gt;OnRenderItemText &lt;/li&gt;
 &lt;li&gt;OnRenderItemArrow&lt;/li&gt;
 &lt;li&gt;OnRenderItemImage &lt;/li&gt;
 &lt;li&gt;OnRenderToolStripBorder &lt;/li&gt;
&lt;/ul&gt;

&lt;p&gt;The toolstrip border is painted last, as it&amp;#39;s sort of a last
chance fixup paint if the items happen to go edge to edge.&lt;/p&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1200" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>215</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1200</evnet:viewtrackingurl></item><item><title>When should I use a renderer and when should I just override OnPaint</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/when-should-i-use-a-renderer-and-when-should-i-just-override-onpaint.aspx</link><pubDate>Wed, 12 Jul 2006 20:54:19 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1197</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Use draw from custom ToolStrip handler – which is the entry point
into Renderer code. OnRender* will be called as a result. To change Renderer behavior,
override OnRender*.&lt;/p&gt;

&lt;pre&gt;public class MyLabel : ToolStripLabel{
   protected override void OnPaint(PaintEventArgs e) {
    // Advantage here is that you&amp;#39;d get free disabled image support
    this.Parent.Renderer.DrawItemImage(new ToolStripItemImageRenderEventArgs(e.Graphics, this, this.Image, this.Bounds));
   }
}&lt;/pre&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1197" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>214</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1197</evnet:viewtrackingurl></item><item><title>Can I make the ProfessionalRenderer look like the old Office?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/can-i-make-the-professionalrenderer-look-like-the-old-office.aspx</link><pubDate>Wed, 12 Jul 2006 20:54:00 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1196</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;p&gt;Yes... &lt;/p&gt;

&lt;p&gt;Create a class which overrides the ToolStripProfessionalRenderer
called OldProfessionalRenderer&lt;/p&gt;

&lt;p&gt;Pass in a new ProfessionalColorTable with professionalColorTable.UseSystemColors
= false;&lt;/p&gt;

&lt;p&gt;In the OldProfessionalRenderer class, override the following
methods:&lt;/p&gt;

&lt;ul&gt;
 &lt;li&gt;OnRenderImageMargin (clear with ControlLight), &lt;/li&gt;
 &lt;li&gt;OnRenderBorder (do nothing), &lt;/li&gt;
 &lt;li&gt;OnRenderToolStripBackground (clear with ControlLight).&lt;/li&gt;
&lt;/ul&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1196" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>217</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1196</evnet:viewtrackingurl></item><item><title>How do I turn off the &amp;quot;Office&amp;quot; colors?</title><link>http://windowsclient.net/blogs/faqs/archive/2006/07/12/how-do-i-turn-off-the-quot-office-quot-colors.aspx</link><pubDate>Wed, 12 Jul 2006 20:53:31 GMT</pubDate><guid isPermaLink="false">f1c07d22-4184-4df1-9c40-8dd04b52e796:1193</guid><dc:creator>admin</dc:creator><slash:comments>0</slash:comments><description>&lt;b&gt;For one ToolStrip&lt;/b&gt;

&lt;pre&gt;ProfessionalColorTable colorTable = new ProfessionalColorTable();
colorTable.UseSystemColors = true;
toolStrip.Renderer = new ToolStripProfessionalRenderer(colorTable);&lt;/pre&gt;
&lt;b&gt;For the entire app:&lt;/b&gt;
&lt;pre&gt;ToolStripManager.VisualStylesEnabled = false;&lt;/pre&gt;&lt;img src="http://windowsclient.net/aggbug.aspx?PostID=1193" width="1" height="1"&gt;</description><category domain="http://windowsclient.net/blogs/faqs/archive/tags/Using+Controls/default.aspx">Using Controls</category><category domain="http://windowsclient.net/blogs/faqs/archive/tags/ToolStrip/default.aspx">ToolStrip</category><evnet:views>215</evnet:views><evnet:viewtrackingurl>http://windowsclient.net/aggbug.aspx?PostID=1193</evnet:viewtrackingurl></item></channel></rss>