<?xml version="1.0" encoding="UTF-8"?><rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:dc="http://purl.org/dc/elements/1.1/"
	xmlns:atom="http://www.w3.org/2005/Atom"
	xmlns:sy="http://purl.org/rss/1.0/modules/syndication/"
		>
<channel>
	<title>Comments on: NotifyIcon context menus for both buttons in .NET (evolution of a hack)</title>
	<atom:link href="http://damieng.com/blog/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of/feed" rel="self" type="application/rss+xml" />
	<link>http://damieng.com/blog/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of?utm_source=rss&#038;utm_medium=rss&#038;utm_campaign=notifyicon-context-menus-for-both-buttons-in-net-evolution-of</link>
	<description>A .NET developer in silicon valley</description>
	<lastBuildDate>Sun, 25 Dec 2011 15:10:30 +0000</lastBuildDate>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.3.1</generator>
	<item>
		<title>By: Simon</title>
		<link>http://damieng.com/blog/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of#comment-41780</link>
		<dc:creator>Simon</dc:creator>
		<pubDate>Sat, 08 May 2010 13:43:17 +0000</pubDate>
		<guid isPermaLink="false">http://damieng.com/blog/archive/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of.aspx#comment-41780</guid>
		<description>Superb just what i needed, must say the odd icon shown on the taskbar had me dumbfounded now works like a charm...

Keep up the good work</description>
		<content:encoded><![CDATA[<p>Superb just what i needed, must say the odd icon shown on the taskbar had me dumbfounded now works like a charm&#8230;</p>
<p>Keep up the good work</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: DonBeto97</title>
		<link>http://damieng.com/blog/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of#comment-27851</link>
		<dc:creator>DonBeto97</dc:creator>
		<pubDate>Sat, 17 Oct 2009 06:07:56 +0000</pubDate>
		<guid isPermaLink="false">http://damieng.com/blog/archive/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of.aspx#comment-27851</guid>
		<description>Here is the same code in VB.NET:
&lt;code&gt;&lt;pre&gt;&lt;b&gt;Private Sub&lt;/b&gt; notifyIcon_MouseClick(&lt;b&gt;ByVal&lt;/b&gt; sender &lt;b&gt;As Object&lt;/b&gt;, &lt;b&gt;ByVal&lt;/b&gt; e &lt;b&gt;As&lt;/b&gt; System.Windows.Forms.MouseEventArgs) &lt;b&gt;Handles&lt;/b&gt; notifyIcon.MouseClick
        &lt;b&gt;If&lt;/b&gt; e.Button = MouseButtons.Left &lt;b&gt;Then&lt;/b&gt;
             notifyIcon.ContextMenuStrip = taskMenuStrip
             notifyIcon.GetType.GetMethod(&quot;ShowContextMenu&quot;, Reflection.BindingFlags.Instance &lt;b&gt;Or&lt;/b&gt; Reflection.BindingFlags.NonPublic).Invoke(notifyIcon, &lt;b&gt;Nothing&lt;/b&gt;)
             notifyIcon.ContextMenuStrip = contextMenuStrip
        &lt;b&gt;End If
End Sub&lt;/b&gt;&lt;/pre&gt;&lt;/code&gt;</description>
		<content:encoded><![CDATA[<p>Here is the same code in VB.NET:<br />
<code>
<pre><b>Private Sub</b> notifyIcon_MouseClick(<b>ByVal</b> sender <b>As Object</b>, <b>ByVal</b> e <b>As</b> System.Windows.Forms.MouseEventArgs) <b>Handles</b> notifyIcon.MouseClick
        <b>If</b> e.Button = MouseButtons.Left <b>Then</b>
             notifyIcon.ContextMenuStrip = taskMenuStrip
             notifyIcon.GetType.GetMethod("ShowContextMenu", Reflection.BindingFlags.Instance <b>Or</b> Reflection.BindingFlags.NonPublic).Invoke(notifyIcon, <b>Nothing</b>)
             notifyIcon.ContextMenuStrip = contextMenuStrip
        <b>End If
End Sub</b></pre>
<p></code></p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Damien Guard</title>
		<link>http://damieng.com/blog/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of#comment-1861</link>
		<dc:creator>Damien Guard</dc:creator>
		<pubDate>Fri, 01 Jun 2007 20:58:51 +0000</pubDate>
		<guid isPermaLink="false">http://damieng.com/blog/archive/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of.aspx#comment-1861</guid>
		<description>This is true and I think Microsoft wanted to achieve just that with the Enterprise Library and Patterns &amp; Practice blocks but for the most part missed the objective once again by delivering some incredibly abstract blocks.&lt;br /&gt;&lt;br /&gt;[)amien</description>
		<content:encoded><![CDATA[<p>This is true and I think Microsoft wanted to achieve just that with the Enterprise Library and Patterns &amp; Practice blocks but for the most part missed the objective once again by delivering some incredibly abstract blocks.</p>
<p>[)amien</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: steve</title>
		<link>http://damieng.com/blog/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of#comment-1860</link>
		<dc:creator>steve</dc:creator>
		<pubDate>Fri, 01 Jun 2007 00:52:55 +0000</pubDate>
		<guid isPermaLink="false">http://damieng.com/blog/archive/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of.aspx#comment-1860</guid>
		<description>Maybe so, but IMO it just points to a poor set of priorities. Loads of resources are going into upgrading low-level components of C# and the like, whichi s nice and makes for good tech articles but at the end of the day is it really helping to get projects done? Yeah, it&#039;s fun and exciting but real projects need large components that are mature, flexible, extensible and just work. Arguably as developers we don&#039;t need a constant stream of language updates and low-level things, we need good software building blocks that adapt well to our needs and have a good shelf-life. IMO they&#039;ve spent way too much time on cool gadgets and stuff that low-level programmers like to play with and not enough time on what&#039;s actually useful for building large, real-world systems.</description>
		<content:encoded><![CDATA[<p>Maybe so, but IMO it just points to a poor set of priorities. Loads of resources are going into upgrading low-level components of C# and the like, whichi s nice and makes for good tech articles but at the end of the day is it really helping to get projects done? Yeah, it&#8217;s fun and exciting but real projects need large components that are mature, flexible, extensible and just work. Arguably as developers we don&#8217;t need a constant stream of language updates and low-level things, we need good software building blocks that adapt well to our needs and have a good shelf-life. IMO they&#8217;ve spent way too much time on cool gadgets and stuff that low-level programmers like to play with and not enough time on what&#8217;s actually useful for building large, real-world systems.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: steve</title>
		<link>http://damieng.com/blog/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of#comment-1858</link>
		<dc:creator>steve</dc:creator>
		<pubDate>Thu, 31 May 2007 21:32:38 +0000</pubDate>
		<guid isPermaLink="false">http://damieng.com/blog/archive/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of.aspx#comment-1858</guid>
		<description>I&#039;ve long held the opinion that MS knows very little about writing well-structured software. My experience with all of their frameworks (although my exposure to .Net has been less so) has resulted in much hair-pulling. And most of the time looking at the MSDN articles on their recommended software structures made me wince - much of the time they appeared to be written by college graduates with no experience of long-term software development. The fact that .Net seems to want to &#039;morph&#039; into a new form every 12 months with new whizzy developer gimmicks (like LINQ) rather than concentrating on a solid, incrementally evolving architectural base reinforces that opinion. Less discrete productising, more overarching, stable structure is the key to long-term design and they don&#039;t seem to &#039;get&#039; that at all.&lt;br /&gt;&lt;br /&gt;Your principles on re-use agree with mine, and is one reason why our coding standard for Ogre say that you should never use the &#039;private&#039; keyword (preventing access from subclasses). C++ doesn&#039;t have a &#039;sealed&#039; keyword but it&#039;s equivalent to &#039;final&#039; in Java, which again good coders are told never to use for anything except immutable constants. Recommending you make most classes &#039;final&#039; in the first instance would have been laughed at by most serious Java developers.&lt;br /&gt;&lt;br /&gt;This post reinforces my opinion that MS and .Net are still terribly &#039;young&#039; in their attitude to software engineering. Whizzy language gimmicks pull in developers but it&#039;s all for naught if you can&#039;t deliver a good long-term framework.</description>
		<content:encoded><![CDATA[<p>I&#8217;ve long held the opinion that MS knows very little about writing well-structured software. My experience with all of their frameworks (although my exposure to .Net has been less so) has resulted in much hair-pulling. And most of the time looking at the MSDN articles on their recommended software structures made me wince &#8211; much of the time they appeared to be written by college graduates with no experience of long-term software development. The fact that .Net seems to want to &#8216;morph&#8217; into a new form every 12 months with new whizzy developer gimmicks (like LINQ) rather than concentrating on a solid, incrementally evolving architectural base reinforces that opinion. Less discrete productising, more overarching, stable structure is the key to long-term design and they don&#8217;t seem to &#8216;get&#8217; that at all.</p>
<p>Your principles on re-use agree with mine, and is one reason why our coding standard for Ogre say that you should never use the &#8216;private&#8217; keyword (preventing access from subclasses). C++ doesn&#8217;t have a &#8216;sealed&#8217; keyword but it&#8217;s equivalent to &#8216;final&#8217; in Java, which again good coders are told never to use for anything except immutable constants. Recommending you make most classes &#8216;final&#8217; in the first instance would have been laughed at by most serious Java developers.</p>
<p>This post reinforces my opinion that MS and .Net are still terribly &#8216;young&#8217; in their attitude to software engineering. Whizzy language gimmicks pull in developers but it&#8217;s all for naught if you can&#8217;t deliver a good long-term framework.</p>
]]></content:encoded>
	</item>
	<item>
		<title>By: Damien Guard</title>
		<link>http://damieng.com/blog/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of#comment-1859</link>
		<dc:creator>Damien Guard</dc:creator>
		<pubDate>Thu, 31 May 2007 12:59:23 +0000</pubDate>
		<guid isPermaLink="false">http://damieng.com/blog/archive/2007/05/31/notifyicon-context-menus-for-both-buttons-in-net-evolution-of.aspx#comment-1859</guid>
		<description>I think it&#039;s unfair to blame the whole .NET team.  The CLR and language guys seem to be doing really good work - it&#039;s just the attitude and inexperience of the framework guys that seems to be letting down the entire platform.&lt;br /&gt;&lt;br /&gt;[)amien</description>
		<content:encoded><![CDATA[<p>I think it&#8217;s unfair to blame the whole .NET team.  The CLR and language guys seem to be doing really good work &#8211; it&#8217;s just the attitude and inexperience of the framework guys that seems to be letting down the entire platform.</p>
<p>[)amien</p>
]]></content:encoded>
	</item>
</channel>
</rss>

