<?xml version="1.0" encoding="UTF-8"?>
<rss version="2.0"
	xmlns:content="http://purl.org/rss/1.0/modules/content/"
	xmlns:wfw="http://wellformedweb.org/CommentAPI/"
	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/"
	xmlns:slash="http://purl.org/rss/1.0/modules/slash/"
	>

<channel>
	<title>emphess .NET &#187; Article</title>
	<atom:link href="http://www.emphess.net/tag/article/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.emphess.net</link>
	<description>Christoph Menge&#039;s Blog</description>
	<lastBuildDate>Tue, 15 Jun 2010 00:50:30 +0000</lastBuildDate>
	<generator>http://wordpress.org/?v=2.9.2</generator>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
			<item>
		<title>The MenuKiller Control &#8211; Differentiated UX</title>
		<link>http://www.emphess.net/2008/04/07/the-menukiller-control-differentiated-ux/</link>
		<comments>http://www.emphess.net/2008/04/07/the-menukiller-control-differentiated-ux/#comments</comments>
		<pubDate>Mon, 07 Apr 2008 17:00:50 +0000</pubDate>
		<dc:creator>Christoph Menge</dc:creator>
				<category><![CDATA[Software]]></category>
		<category><![CDATA[Article]]></category>
		<category><![CDATA[Custom Controls]]></category>
		<category><![CDATA[Differentiated UX]]></category>
		<category><![CDATA[DUX]]></category>
		<category><![CDATA[WPF]]></category>

		<guid isPermaLink="false">http://www.emphess.net/?p=20</guid>
		<description><![CDATA[
A while ago, I read a very interesting blog post: Rethinking the Button by Dax Pandhi. It really fascianated me, so I started some research on the topic. Apparently, &#8220;Differentiated UX&#8221; is the new buzzword. As is always the case with buzzwords, different people understand it in different way, but I guess the common denominator is: We [...]]]></description>
			<content:encoded><![CDATA[<p>
A while ago, I read a very interesting blog post: <a title="Dax Pandhi - Rethinking the Button" href="http://blog.nukeation.com/post/UX-Concepts---Rethinking-the-Button.aspx" target="_blank">Rethinking the Button </a>by Dax Pandhi. It really fascianated me, so I started some research on the topic. Apparently, &#8220;Differentiated UX&#8221; is <em>the</em> new buzzword. As is always the case with buzzwords, different people understand it in different way, but I guess the common denominator is: We haven&#8217;t been putting enough effort into User Interfaces, because we simply stuck to what was there (at least, most of us). </p>
<p>
<img style="border-top-width: 0px; border-left-width: 0px; border-bottom-width: 0px; border-right-width: 0px" src="http://www.emphess.net/wp-content/uploads/2008/04/mk2.png" alt="MenuKiller screen shot" align="left" />
</p>
<p>
With WPF, things have changed quite a bit. What makes a control? In Windows Forms, a control had a certain look and behaviour. Some of it could be modified (e.g. the colors, the way the button behaves on click, etc.), yet a lot of it was fixed. For example, many controls had a <code>Text</code>-Property which accepted a string of course.<br />
WPF Controls, on the other hand, have Content or Items, which can again be controls. So you can finally put an image into a tooltip with a few lines of purely declarative XAML code. Therefore, in WPF, a control is far less specific. Many scenarios that demanded a custom control in Windows Forms are now merely a different content, or a template.
</p>
<p>
Anyway, I wanted to use Dax&#8217;s control I a project of mine, but even though his <a href="http://www.nukeation.net/2007/10/29/Simple+ImageButton+ControlTemplate.aspx">original code</a> was sufficient to build a simple demo of the control, I wanted to create a nice templateable custom control with all the behaviour we need. As it turns out, doing that is not trivial, especially for a WPF Newbie like me.
</p>
<p>
The learning curve was really steep, but I really learned a lot about WPF, custom controls and control authoring this way. The delay I&#8217;m having is really huge, so this is really a post about an upcoming article. However, since the control is now almost finished, here are some screenshots and the xaml code that the user will need to create the control:
</p>
<p>
<img src="http://www.emphess.net/wp-content/uploads/2008/04/mk1.jpg" alt="MenuKiller screen shot" align="right" /></p>
<pre class="brush: xml">
&lt;mk:MenuKiller VerticalAlignment=&quot;Center&quot;&gt;
  &lt;mk:MenuKillerItem&gt;
    &lt;mk:MenuKillerItem.Header&gt;
      &lt;Image Width=&quot;64&quot; Source=&quot;....png&quot;/&gt;
    &lt;/mk:MenuKillerItem.Header&gt;

    &lt;mk:MenuKillerItem&gt;
      &lt;mk:MenuKillerItem.Header&gt;
        &lt;Image Width=&quot;32&quot; Source=&quot;....png&quot;/&gt;
      &lt;/mk:MenuKillerItem.Header&gt;
    &lt;/mk:MenuKillerItem&gt;

    &lt;mk:MenuKillerItem&gt;
      &lt;mk:MenuKillerItem.Header&gt;
        &lt;Image Width=&quot;32&quot; Source=&quot;....png&quot;/&gt;
      &lt;/mk:MenuKillerItem.Header&gt;
    &lt;/mk:MenuKillerItem&gt;

    &lt;mk:MenuKillerItem&gt;
      &lt;mk:MenuKillerItem.Header&gt;
        &lt;Image Width=&quot;32&quot; Source=&quot;....png&quot;/&gt;
      &lt;/mk:MenuKillerItem.Header&gt;
    &lt;/mk:MenuKillerItem&gt;

    &lt;mk:MenuKillerItem&gt;
      &lt;mk:MenuKillerItem.Header&gt;
        &lt;Image Width=&quot;32&quot; Source=&quot;....png&quot;/&gt;
      &lt;/mk:MenuKillerItem.Header&gt;
    &lt;/mk:MenuKillerItem&gt;
  &lt;/mk:MenuKillerItem&gt;
&lt;/mk:MenuKiller&gt;
</pre>
<p>
As you can see, using the control is really simple. The cool icons, by the way, are from <a href="http://wearwolfaa.deviantart.com/art/23-PNG-Vista-Style-Icons-74510840">http://wearwolfaa.deviantart.com/art/23-PNG-Vista-Style-Icons-74510840</a>.
</p>
<p>
Stay tuned &#8211; I will be busy on The CodeProject the next days, where I will certainly write an article about this control!
</p>
<p>
My current solution involves a custom panel, an overridden tree-view and tree view item, a rather complex default-theme, Custom Commands, 2 &#8220;PART_&#8221;-Controls within the template that can be overridden as well as a set of custom converters. This is not final, however, because some of these items currently don&#8217;t do a thin.
</p>
<p>
Still, everything is a little simplified, since I wanted to support the probable and important cases first, rather than the offbeat scenario. 
</p>
<p>
I also had a very long and important customer meeting yesterday where I presented this control in a demo app. Now people generally try to stick to what they know, but while my customer argued that the &#8216;old way&#8217; should still be available to end-users, he also showed a lot of interest in this new kind of user experience.
</p>
<p>
If you want to read about Differentiated UX further, I suggest these resources:
</p>
<p>
Sample Applications: <a href="http://www.vertigo.com/familyshow.aspx">Familiy.Show</a>, <a href="http://wpf.netfx3.com/files/folders/applications/entry7625.aspx">Woodgrove Finance Application</a> and <a href="http://www.thirteen23.com/work/cine.view/">Cine.View</a>.
</p>
<p>
Posts and Articles: <a title="Dax Pandhi - Differentiated UX" href="http://blog.nukeation.com/post/Differentiated-UX.aspx" target="_blank">Differentiated UX</a> by Dax Pandhi, <a title="Brian Noyes - Differentiated UX" href="http://www.softinsight.com/bnoyes/PermaLink.aspx?guid=0158f4a8-1b7f-4bd0-aed5-5cf5a65389c2" target="_blank">Differentiated UX</a> by Brian Noyes
</p>
<p>
My dearest thanks to Dax, who has encouraged me to build this control and has always been a valuable brainstorm victim <img src='http://www.emphess.net/wp-includes/images/smilies/icon_wink.gif' alt=';-)' class='wp-smiley' />  Cheers Dax!
</p>
<p>
Chris</p>
<div style="float: right;"><p align="right"><a rel="nofollow" class="tt" href="http://twitter.com/home/?status=The+MenuKiller+Control+%E2%80%93+Differentiated+UX+http://bit.ly/ckHEdw" title="Post to Twitter"><img class="nothumb" src="http://www.emphess.net/wp-content/plugins/tweet-this/icons/tt-twitter2.png" alt="Post to Twitter" /></a> <a rel="nofollow" class="tt" href="http://delicious.com/post?url=http://www.emphess.net/2008/04/07/the-menukiller-control-differentiated-ux/&amp;title=The+MenuKiller+Control+%E2%80%93+Differentiated+UX" title="Post to Delicious"><img class="nothumb" src="http://www.emphess.net/wp-content/plugins/tweet-this/icons/tt-delicious.png" alt="Post to Delicious" /></a> <a rel="nofollow" class="tt" href="http://digg.com/submit?url=http://www.emphess.net/2008/04/07/the-menukiller-control-differentiated-ux/&amp;title=The+MenuKiller+Control+%E2%80%93+Differentiated+UX" title="Post to Digg"><img class="nothumb" src="http://www.emphess.net/wp-content/plugins/tweet-this/icons/tt-digg.png" alt="Post to Digg" /></a> <a rel="nofollow" class="tt" href="http://www.facebook.com/share.php?u=http://www.emphess.net/2008/04/07/the-menukiller-control-differentiated-ux/&amp;t=The+MenuKiller+Control+%E2%80%93+Differentiated+UX" title="Post to Facebook"><img class="nothumb" src="http://www.emphess.net/wp-content/plugins/tweet-this/icons/tt-facebook.png" alt="Post to Facebook" /></a></p></div>]]></content:encoded>
			<wfw:commentRss>http://www.emphess.net/2008/04/07/the-menukiller-control-differentiated-ux/feed/</wfw:commentRss>
		<slash:comments>0</slash:comments>
		</item>
	</channel>
</rss>
