﻿<?xml version="1.0" encoding="UTF-8"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/"><channel><title>StrataFrame Forum » StrataFrame Application Framework - V1 » WinForms (How do I?)  » SubClass SF Button</title><generator>InstantForum 2017-1 Final</generator><description>StrataFrame Forum</description><link>http://forum.strataframe.net/</link><webMaster>StrataFrame Forum</webMaster><lastBuildDate>Tue, 19 May 2026 23:37:20 GMT</lastBuildDate><ttl>20</ttl><item><title>SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28558.aspx</link><description>It is time I increase my skill level. So I want to learn how to subclass some of the SF controls. I want to start with the SF Button. I have been able to subclass the button and have it show up in the toolbox. I can drag it to a form and it works like a normal SF button. But now I want to set it size, text and change the click event. I can not seem to find the correct syntax so I need a little nudge to get me going. &amp;nbsp;I think one thing I need to do is an click override but I can not seem to find a sample and not sure how to set the size and text. TIA.</description><pubDate>Wed, 06 Oct 2010 22:03:57 GMT</pubDate><dc:creator>Terry Bottorff</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28613.aspx</link><description>Glad it helped!</description><pubDate>Wed, 06 Oct 2010 22:03:57 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28612.aspx</link><description>Thanks for the encouragement.&amp;nbsp;&lt;div&gt;If you are able to find any more out about the Icon please let me know.&amp;nbsp;&lt;div&gt;I will try your method of having a property just so I have that experience.&lt;div&gt;I know your time is valuable and I appreciate it very much.&lt;br/&gt;</description><pubDate>Wed, 06 Oct 2010 21:06:48 GMT</pubDate><dc:creator>Terry Bottorff</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28611.aspx</link><description>Looking good. I played around with another option, which is to simply add a property to the CloseButton, so you can set the parent form manually. This simplifies the code and potentially could run faster, but you have to remember to set the parent form. The code using this looks like:&lt;br/&gt;&lt;br/&gt;&lt;span&gt;[codesnippet]public class CloseButton&lt;br/&gt;&amp;nbsp; : System.Windows.Forms.Button&lt;br/&gt;{&lt;br/&gt;&lt;br/&gt;&amp;nbsp; private System.Windows.Forms.Form _parentForm;&lt;br/&gt;&lt;br/&gt;&amp;nbsp; /// &amp;lt;summary&amp;gt;&lt;br/&gt;&amp;nbsp; /// Defines.&lt;br/&gt;&amp;nbsp; /// &amp;lt;/summary&amp;gt;&lt;br/&gt;&amp;nbsp; public System.Windows.Forms.Form ParentForm&lt;br/&gt;&amp;nbsp; {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; get&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; return _parentForm;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; set&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; _parentForm = value;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br/&gt;&amp;nbsp; }&lt;br/&gt;&lt;br/&gt;&amp;nbsp; protected override void OnCreateControl()&lt;br/&gt;&amp;nbsp; {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; base.OnCreateControl();&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.Text = "Close";&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.Width = 75;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.Height = 23;&lt;br/&gt;&amp;nbsp; }&lt;br/&gt;&lt;br/&gt;&amp;nbsp; protected override void OnClick( EventArgs e )&lt;br/&gt;&amp;nbsp; {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; base.OnClick( e );&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; //-- Close the form if its set.&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; if (this.ParentForm != null)&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; {&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; this.ParentForm.Close();&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; }&lt;br/&gt;&amp;nbsp; }&lt;br/&gt;}[/codesnippet]&lt;br/&gt;&lt;br/&gt;So this code is simpler but requires that you remember to set the ParentForm property. I'd likely go with your original code as usually the close button won't be buried too deep in a form's control hierarchy, so the time for the loop should be negligible. &lt;br/&gt;&lt;br/&gt;I also played around with the icon and had no luck either. I checked the SF source code and they are using exactly what you are using....and the SF button has a nice icon....&lt;span&gt; :crazy:&lt;/span&gt;&lt;br/&gt;&lt;/span&gt;</description><pubDate>Wed, 06 Oct 2010 19:17:46 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28608.aspx</link><description>&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;Protected&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Overrides&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&amp;nbsp;OnClick(&lt;span style="color: blue"&gt;ByVal&lt;/span&gt;&amp;nbsp;e&amp;nbsp;&lt;span style="color: blue"&gt;As&lt;/span&gt;&amp;nbsp;System.&lt;span style="color: #2b91af"&gt;EventArgs&lt;/span&gt;)&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;MyBase&lt;/span&gt;.OnClick(e)&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Dim&lt;/span&gt;&amp;nbsp;parentform&amp;nbsp;&lt;span style="color: blue"&gt;As&lt;/span&gt;&amp;nbsp;&lt;span style="color: #2b91af"&gt;Form&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.GetParentForm()&lt;br/&gt;&lt;br/&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;If&lt;/span&gt;&amp;nbsp;parentform&amp;nbsp;&lt;span style="color: blue"&gt;IsNot&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Nothing&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Then&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;parentform.Close()&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;If&lt;/span&gt;&lt;br/&gt;  &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Protected&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Overrides&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&amp;nbsp;oncreatecontrol()&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;MyBase&lt;/span&gt;.OnCreateControl()&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.Width&amp;nbsp;=&amp;nbsp;75&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.Height&amp;nbsp;=&amp;nbsp;23&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.Text&amp;nbsp;=&amp;nbsp;&lt;span style="color: #a31515"&gt;"Exit"&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Private&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Function&lt;/span&gt;&amp;nbsp;GetParentForm()&amp;nbsp;&lt;span style="color: blue"&gt;As&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Object&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: green"&gt;'&amp;nbsp;return&amp;nbsp;var&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Dim&lt;/span&gt;&amp;nbsp;parentform&amp;nbsp;&lt;span style="color: blue"&gt;As&lt;/span&gt;&amp;nbsp;&lt;span style="color: #2b91af"&gt;Form&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style="color: blue"&gt;Nothing&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Dim&lt;/span&gt;&amp;nbsp;ctl1&amp;nbsp;&lt;span style="color: blue"&gt;As&lt;/span&gt;&amp;nbsp;&lt;span style="color: #2b91af"&gt;Control&lt;/span&gt;&amp;nbsp;=&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.Parent&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;If&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;TypeOf&lt;/span&gt;&amp;nbsp;ctl1&amp;nbsp;&lt;span style="color: blue"&gt;Is&lt;/span&gt;&amp;nbsp;&lt;span style="color: #2b91af"&gt;Form&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Then&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;parentform&amp;nbsp;=&amp;nbsp;&lt;span style="color: blue"&gt;DirectCast&lt;/span&gt;(ctl1,&amp;nbsp;&lt;span style="color: #2b91af"&gt;Form&lt;/span&gt;)&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Return&lt;/span&gt;&amp;nbsp;parentform&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;If&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Do&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;ctl1&amp;nbsp;=&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.GetNextControl(ctl1,&amp;nbsp;&lt;span style="color: blue"&gt;True&lt;/span&gt;)&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;If&lt;/span&gt;&amp;nbsp;ctl1&amp;nbsp;&lt;span style="color: blue"&gt;IsNot&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Nothing&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Then&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: green"&gt;'&amp;nbsp;Search&amp;nbsp;for&amp;nbsp;Form&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;If&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;TypeOf&lt;/span&gt;&amp;nbsp;ctl1&amp;nbsp;&lt;span style="color: blue"&gt;Is&lt;/span&gt;&amp;nbsp;&lt;span style="color: #2b91af"&gt;Form&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Then&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;parentform&amp;nbsp;=&amp;nbsp;&lt;span style="color: blue"&gt;DirectCast&lt;/span&gt;(ctl1,&amp;nbsp;&lt;span style="color: #2b91af"&gt;Form&lt;/span&gt;)&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;If&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;If&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Loop&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Until&lt;/span&gt;&amp;nbsp;ctl1&amp;nbsp;&lt;span style="color: blue"&gt;Is&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Nothing&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Return&lt;/span&gt;&amp;nbsp;parentform&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Function&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;The above works but of course I am sure I did not do it the best way. Any suggestions would be appreciated.&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;Thank you again.&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/pre&gt;</description><pubDate>Wed, 06 Oct 2010 15:40:58 GMT</pubDate><dc:creator>Terry Bottorff</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28603.aspx</link><description>I'm still not sure why the icon isn't working. If I get time today I'll see if I can work up an example.&lt;br/&gt;&lt;br/&gt;As to Me.Parent.Close() vs. Me.Parent.Dispose(), this has to do with the Type of the Parent property. The Parent property is of Type System.Windows.Forms.Control. Winform Forms inherit from this Type (yep, forms are sub-classes of the basic Control Type, just like buttons or text boxes).&amp;nbsp; All Controls implement IDisposable (which has a Dispose method).&amp;nbsp;&amp;nbsp; So, once you find the parent form, you'll want to cast it to a Form, then call close.&lt;br/&gt;&lt;br/&gt;&lt;span&gt;[codesnippet]Protected Overrides Sub OnClick(e As EventArgs)&lt;br/&gt;&amp;nbsp; MyBase.OnClick(e)&lt;br/&gt;&lt;br/&gt;&amp;nbsp; '-- Get the parent form. &lt;br/&gt;&amp;nbsp; Form parentForm = Me.GetParentForm()&lt;br/&gt;&amp;nbsp; If parentForm IsNot Nothing &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; parentForm.Close()&lt;br/&gt;&amp;nbsp; End If&lt;br/&gt;End Sub&lt;br/&gt;&lt;br/&gt;''' &amp;lt;Summary&amp;gt;&lt;br/&gt;''' Find and return the parent form of this control.&lt;br/&gt;''' &amp;lt;/Summary&amp;gt;&lt;br/&gt;Private Sub GetParentForm()&lt;br/&gt;&amp;nbsp; '-- Establish a return var.&lt;br/&gt;&amp;nbsp; Form parentForm = Nothing&lt;br/&gt;&lt;br/&gt;&amp;nbsp; '-- Establish local to track current parent we're testing.&lt;br/&gt;&amp;nbsp; Control currentParent = Me.Parent&lt;br/&gt;&lt;br/&gt;&amp;nbsp; '-- Walk parent hierarchy until we run out of parents or we find a form.&lt;br/&gt;&amp;nbsp; While &lt;/span&gt;&lt;span&gt;currentParent &lt;/span&gt;&lt;span&gt; IsNot Nothing&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; '-- Test if the parent is a Form.&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; If currentParent.GetType() Is GetType(Form) Then&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; parentForm = DirectCast(currentParent, Form)&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp; Exit While&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; End If&lt;br/&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; '-- Get the next parent.&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/span&gt;&lt;span&gt;currentParent = &lt;/span&gt;&lt;span&gt;currentParent.Parent&lt;/span&gt;&lt;br/&gt;&lt;span&gt;&amp;nbsp; End While&lt;br/&gt;&lt;br/&gt;&amp;nbsp; '-- Return the parent form (or null if one isn't found)&lt;br/&gt;&amp;nbsp; Return parentForm&lt;br/&gt;End Sub[/codesnippet]&lt;br/&gt;&lt;br/&gt;I just typed this code in, so there could be errors, but it should get you going in the right direction.&lt;br/&gt;&lt;/span&gt;</description><pubDate>Wed, 06 Oct 2010 10:49:54 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28601.aspx</link><description>&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;Protected&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Overrides&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&amp;nbsp;oncreatecontrol()&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;MyBase&lt;/span&gt;.OnCreateControl()&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.Text&amp;nbsp;=&amp;nbsp;&lt;span style="color: #a31515"&gt;"Exit"&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;This is what I used and it seems to work fine. Now the icon?&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;Wow what a great deal to digest today. &lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;span style="color: blue"&gt;&lt;br/&gt;&lt;/span&gt;&lt;/pre&gt;</description><pubDate>Wed, 06 Oct 2010 10:11:42 GMT</pubDate><dc:creator>Terry Bottorff</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28600.aspx</link><description>1. Button vs button did not make any difference.&lt;div&gt;2. parent.close() did not work but parent.dispose() seems to work. Would dispose() create any problems if I know that I am going to drop this control on my forms only?&lt;div&gt;3. I am going to have to research OnCreateControl Method since I have not run across that method before. I may need some help here.&lt;br/&gt;&lt;br/&gt;&lt;div&gt;Thank you again for your help and expert advise.</description><pubDate>Wed, 06 Oct 2010 10:05:11 GMT</pubDate><dc:creator>Terry Bottorff</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28597.aspx</link><description>I haven't tried to do this in VS yet, but here's somethings to try. If these don't work, I'll open the IDE. :D&lt;br/&gt;&lt;br/&gt;1. It's possible that the attribute is case sensitive (cause everything else looks good). So [code]&amp;lt;ToolboxBitmap(GetType(System.Windows.Forms.Button))&amp;gt;[/code]&lt;font style="font-family: Courier New;" size="1"&gt;&lt;span id="ctl00_ctlContentPlaceHolder_ctl00_ctlTopic_ctlPanelBar_ctlTopicsRepeater_ctl01_lblFullMessage"&gt;&lt;span style="font-family: monospace;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;&lt;br/&gt;&lt;br/&gt;2. Me.Close attempts to close the button...oops.&amp;nbsp; You'd need to user the Parent property. Of course this isn't that straight forward as the button might be in a panel. So you need to walk up the parents until you get to a form, then close that.&lt;br/&gt;&lt;br/&gt;3. I'd try the OnCreateControl method then (override it) rather than the constructor. &lt;br/&gt;&lt;font style="font-family: Courier New;" size="1"&gt;&lt;span id="ctl00_ctlContentPlaceHolder_ctl00_ctlTopic_ctlPanelBar_ctlTopicsRepeater_ctl01_lblFullMessage"&gt;&lt;span style="font-family: monospace;"&gt;&lt;span style="font-weight: bold;"&gt;&lt;/span&gt;&lt;/span&gt;&lt;/span&gt;&lt;/font&gt;</description><pubDate>Wed, 06 Oct 2010 00:57:16 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28596.aspx</link><description>Finally got back to this but am having problems.&lt;h1&gt;&lt;pre style="font-family: consolas"&gt;&lt;span style="color: green"&gt;'''&amp;nbsp;&lt;/span&gt;&lt;span style="color: gray"&gt;&amp;lt;summary&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: green"&gt;'''&amp;nbsp;My&amp;nbsp;Button&amp;nbsp;class.&amp;nbsp;&amp;nbsp;I&amp;nbsp;will&amp;nbsp;use&amp;nbsp;this&amp;nbsp;class&amp;nbsp;to&amp;nbsp;exit&amp;nbsp;a&amp;nbsp;form.&lt;/span&gt;&lt;br/&gt;&lt;span style="color: green"&gt;'''&amp;nbsp;&lt;/span&gt;&lt;span style="color: gray"&gt;&amp;lt;/summary&amp;gt;&lt;/span&gt;&lt;br/&gt;&lt;span style="color: green"&gt;'''&amp;nbsp;&lt;/span&gt;&lt;span style="color: gray"&gt;&amp;lt;remarks&amp;gt;&amp;lt;/remarks&amp;gt;&lt;/span&gt;&lt;br/&gt;&amp;lt;&lt;span style="color: #2b91af"&gt;ToolboxBitmap&lt;/span&gt;(&lt;span style="color: blue"&gt;GetType&lt;/span&gt;(System.Windows.Forms.&lt;span style="color: #2b91af"&gt;button&lt;/span&gt;))&amp;gt;&lt;br/&gt;&lt;span style="color: blue"&gt;Public&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Class&lt;/span&gt;&amp;nbsp;&lt;span style="color: #2b91af"&gt;myExitButton&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Inherits&lt;/span&gt;&amp;nbsp;MicroFour.StrataFrame.UI.Windows.Forms.&lt;span style="color: #2b91af"&gt;Button&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Public&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;New&lt;/span&gt;()&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;MyBase&lt;/span&gt;.New()&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.Width&amp;nbsp;=&amp;nbsp;23&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.Height&amp;nbsp;=&amp;nbsp;32&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Me&lt;/span&gt;.Text&amp;nbsp;=&amp;nbsp;&lt;span style="color: #a31515"&gt;"Exit"&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&lt;br/&gt; &lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;Protected&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Overrides&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&amp;nbsp;OnClick(&lt;span style="color: blue"&gt;ByVal&lt;/span&gt;&amp;nbsp;e&amp;nbsp;&lt;span style="color: blue"&gt;As&lt;/span&gt;&amp;nbsp;System.&lt;span style="color: #2b91af"&gt;EventArgs&lt;/span&gt;)&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;MyBase&lt;/span&gt;.OnClick(e)&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: green"&gt;'&amp;nbsp;Simply&amp;nbsp;Want&amp;nbsp;to&amp;nbsp;Close&amp;nbsp;the&amp;nbsp;Form&amp;nbsp;Like&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: green"&gt;'&amp;nbsp;Me.close()&lt;/span&gt;&lt;br/&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;span style="color: blue"&gt;End&lt;/span&gt;&amp;nbsp;&lt;span style="color: blue"&gt;Sub&lt;/span&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;font class="Apple-style-span" face="verdana, arial, tahoma" size="3"&gt;&lt;span class="Apple-style-span" style="font-size: 12px; font-weight: normal; white-space: normal;"&gt;Of course the three things I want to work don't:&lt;/span&gt;&lt;/font&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;ol&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, tahoma; font-weight: normal; white-space: normal; font-size: 12px; "&gt;The icon of a button does not show up just a cog wheel on the toolbox. Maybe that is the way it should be.&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, tahoma; font-weight: normal; white-space: normal; font-size: 12px; "&gt;Me.Close will not work&lt;/span&gt;&lt;/li&gt;&lt;li&gt;&lt;span class="Apple-style-span" style="font-family: verdana, arial, tahoma; font-weight: normal; white-space: normal; font-size: 12px; "&gt;me.text="Exit' does not show up.&lt;/span&gt;&lt;/li&gt;&lt;/ol&gt;&lt;/pre&gt;&lt;pre style="font-family: consolas"&gt;&lt;font class="Apple-style-span" face="verdana, arial, tahoma" size="3"&gt;&lt;span class="Apple-style-span" style="font-size: 12px; font-weight: normal; white-space: normal;"&gt;TIA&lt;/span&gt;&lt;/font&gt;&lt;/pre&gt;&lt;/h1&gt;</description><pubDate>Tue, 05 Oct 2010 20:10:10 GMT</pubDate><dc:creator>Terry Bottorff</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28566.aspx</link><description>Thank you very much.</description><pubDate>Mon, 04 Oct 2010 13:44:23 GMT</pubDate><dc:creator>Terry Bottorff</dc:creator></item><item><title>RE: SubClass SF Button</title><link>http://forum.strataframe.net/FindPost28563.aspx</link><description>Terry,&lt;br/&gt;&lt;br/&gt;To override the size, I'd use the contstructor:&lt;br/&gt;&lt;br/&gt;&lt;span&gt;[codesnippet]Public Sub New()&lt;br/&gt;&amp;nbsp; '-- Call base constructor.&lt;br/&gt;&amp;nbsp; MyBase.New()&lt;br/&gt;&lt;br/&gt;&amp;nbsp; '-- Set default height/width.&lt;br/&gt;&amp;nbsp; Me.Height = 32&lt;br/&gt;&amp;nbsp; Me.Width = 75&lt;br/&gt;End Sub[/codesnippet]&lt;/span&gt;&lt;br/&gt;&lt;br/&gt;To set the click behavior, override the OnClick sub. &lt;br/&gt;&lt;br/&gt;&lt;span&gt;[codesnippet]Protected Overrides Sub OnClick(e As EventArgs)&lt;br/&gt;&amp;nbsp; '-- Add custom logic to happen before clicks are handled&lt;br/&gt;&lt;br/&gt;&amp;nbsp; '-- Call base class (this raises the click event for consumers)&lt;br/&gt;&amp;nbsp; MyBase.OnClick(e)&lt;br/&gt;&lt;br/&gt;&amp;nbsp; '-- Add custom logic to happen after clicks are handled.&lt;br/&gt;End Sub[/codesnippet]&lt;/span&gt;</description><pubDate>Mon, 04 Oct 2010 09:30:17 GMT</pubDate><dc:creator>Greg McGuffey</dc:creator></item></channel></rss>