<?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>davidpoll.com &#187; Fun</title>
	<atom:link href="http://www.davidpoll.com/tag/fun/feed/" rel="self" type="application/rss+xml" />
	<link>http://www.davidpoll.com</link>
	<description>Silverlight, RIA development, and other goofy geeky goodness.</description>
	<lastBuildDate>Mon, 26 Jul 2010 02:17:09 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<item>
		<title>Playing around with Silverlight 3… a late Easter Egg hunt – Revealed!</title>
		<link>http://www.davidpoll.com/2009/05/19/playing-around-with-silverlight-3-a-late-easter-egg-hunt-revealed/</link>
		<comments>http://www.davidpoll.com/2009/05/19/playing-around-with-silverlight-3-a-late-easter-egg-hunt-revealed/#comments</comments>
		<pubDate>Tue, 19 May 2009 07:44:37 +0000</pubDate>
		<dc:creator>david.poll</dc:creator>
				<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Blend]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Konami Code]]></category>
		<category><![CDATA[Silverlight 3 Beta]]></category>

		<guid isPermaLink="false">http://www.davidpoll.com/?p=57</guid>
		<description><![CDATA[About a week and a half ago I issued a challenge to folks to figure out what the Silverlight 3 application below does.&#160; I dropped a few hints, but nobody guessed it!&#160; I had hoped for a few more guesses, but c’est la vie, I suppose.&#160; In the meantime, I should fulfill my end of [...]]]></description>
			<content:encoded><![CDATA[<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_start --><!-- AdSense Now! V1.90 -->
<!-- Post[count: 3] -->
<div class="adsense adsense-leadin" style="float:right;margin: 12px;"><script type="text/javascript"><!--
google_ad_client = "pub-0397559301561409";
/* 234x60, created 9/21/09 */
google_ad_slot = "7066877373";
google_ad_width = 234;
google_ad_height = 60;
//-->
</script>
<script type="text/javascript"
src="http://pagead2.googlesyndication.com/pagead/show_ads.js">
</script></div><p>About a week and a half ago <a href="http://www.davidpoll.com/?p=32" target="_blank">I issued a challenge</a> to folks to figure out what the Silverlight 3 application below does.&#160; I dropped a few hints, but nobody guessed it!&#160; I had hoped for a few more guesses, but c’est la vie, I suppose.&#160; In the meantime, I should fulfill my end of the bargain and reveal the secrets of my mystery application, and some of the things I learned while putting it together.</p>
<p>To view the app, you’ll need the Silverlight 3 Beta installed on your machine (download links here):</p>
<p>Windows:    <br /><a href="http://go.microsoft.com/fwlink/?LinkID=143433">http://go.microsoft.com/fwlink/?LinkID=143433</a>     <br />Mac:     <br /><a href="http://go.microsoft.com/fwlink/?LinkID=143434">http://go.microsoft.com/fwlink/?LinkID=143434</a></p>
<p> <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="640" height="480px"><param name="source" value="http://www.davidpoll.com/Samples/Mystery5-8-08/MysterySilverlightApplication.xap" /><param name="onerror" value="onSilverlightError" /><param name="background" value="white" /><param name="minRuntimeVersion" value="3.0.40624.0" /><param name="autoUpgrade" value="false" /><a href="http://go.microsoft.com/fwlink/?LinkID=141205" style="text-decoration: none;">      			<img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style: none" /> 			</a> 		</object>
<p><iframe style="border-right-width: 0px; width: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 0px; visibility: hidden; border-left-width: 0px"></iframe></p>
<p>First, let me show you the “visible” portion of my application.&#160; Pardon my slow reveal, but it will help create drama, I promise!</p>
<pre class="code"><span style="color: blue">&lt;</span><span style="color: #a31515">Grid </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;LayoutRoot&quot; </span><span style="color: red">Background</span><span style="color: blue">=&quot;White&quot;&gt;
    &lt;</span><span style="color: #a31515">Grid.RowDefinitions</span><span style="color: blue">&gt;
        &lt;</span><span style="color: #a31515">RowDefinition </span><span style="color: blue">/&gt;
        &lt;</span><span style="color: #a31515">RowDefinition </span><span style="color: red">Height</span><span style="color: blue">=&quot;Auto&quot; /&gt;
    &lt;/</span><span style="color: #a31515">Grid.RowDefinitions</span><span style="color: blue">&gt;
    &lt;</span><span style="color: #a31515">Grid </span><span style="color: red">DataContext</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Source</span><span style="color: blue">={</span><span style="color: #a31515">StaticResource </span><span style="color: red">SampleDataSource</span><span style="color: blue">}}&quot;&gt;
        &lt;</span><span style="color: #a31515">dataControls</span><span style="color: blue">:</span><span style="color: #a31515">DataForm </span><span style="color: red">CurrentIndex</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">ElementName</span><span style="color: blue">=dg, </span><span style="color: red">Mode</span><span style="color: blue">=TwoWay, </span><span style="color: red">Path</span><span style="color: blue">=SelectedIndex}&quot; </span><span style="color: red">HorizontalAlignment</span><span style="color: blue">=&quot;Right&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;0,8,8,223&quot; </span><span style="color: red">Width</span><span style="color: blue">=&quot;267&quot; </span><span style="color: red">ItemsSource</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Mode</span><span style="color: blue">=OneWay, </span><span style="color: red">Path</span><span style="color: blue">=Collection}&quot;/&gt;
        &lt;</span><span style="color: #a31515">chartingToolkit</span><span style="color: blue">:</span><span style="color: #a31515">Chart </span><span style="color: red">Height</span><span style="color: blue">=&quot;211&quot; </span><span style="color: red">HorizontalAlignment</span><span style="color: blue">=&quot;Right&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;0,0,8,8&quot; </span><span style="color: red">DataContext</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Mode</span><span style="color: blue">=OneWay, </span><span style="color: red">Path</span><span style="color: blue">=Collection}&quot; </span><span style="color: red">VerticalAlignment</span><span style="color: blue">=&quot;Bottom&quot; </span><span style="color: red">Width</span><span style="color: blue">=&quot;267&quot; </span><span style="color: red">Title</span><span style="color: blue">=&quot;Chart Title&quot;&gt;
            &lt;</span><span style="color: #a31515">chartingToolkit</span><span style="color: blue">:</span><span style="color: #a31515">ScatterSeries </span><span style="color: red">SelectedItem</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">ElementName</span><span style="color: blue">=dg, </span><span style="color: red">Mode</span><span style="color: blue">=TwoWay, </span><span style="color: red">Path</span><span style="color: blue">=SelectedItem}&quot; </span><span style="color: red">DependentValuePath</span><span style="color: blue">=&quot;Y&quot; </span><span style="color: red">IndependentValuePath</span><span style="color: blue">=&quot;X&quot; </span><span style="color: red">ItemsSource</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Mode</span><span style="color: blue">=OneWay}&quot; </span><span style="color: red">AnimationSequence</span><span style="color: blue">=&quot;FirstToLast&quot; </span><span style="color: red">IsSelectionEnabled</span><span style="color: blue">=&quot;True&quot;/&gt;
        &lt;/</span><span style="color: #a31515">chartingToolkit</span><span style="color: blue">:</span><span style="color: #a31515">Chart</span><span style="color: blue">&gt;
        &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGrid </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;dg&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;8,8,279,223&quot; </span><span style="color: red">ItemsSource</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Mode</span><span style="color: blue">=OneWay, </span><span style="color: red">Path</span><span style="color: blue">=Collection}&quot; </span><span style="color: red">AutoGenerateColumns</span><span style="color: blue">=&quot;False&quot;&gt;
            &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGrid.Columns</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Bar&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Bar}&quot;/&gt;
                &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Bat&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Bat}&quot;/&gt;
                &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Baz&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Baz}&quot;/&gt;
                &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Foo&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Foo}&quot;/&gt;
                &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Title&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Title}&quot;/&gt;
                &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;X&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=X}&quot;/&gt;
                &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Y&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Y}&quot;/&gt;
            &lt;/</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGrid.Columns</span><span style="color: blue">&gt;
        &lt;/</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGrid</span><span style="color: blue">&gt;
        &lt;</span><span style="color: #a31515">controls</span><span style="color: blue">:</span><span style="color: #a31515">Calendar </span><span style="color: red">Height</span><span style="color: blue">=&quot;211&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;8,0,279,8&quot; </span><span style="color: red">VerticalAlignment</span><span style="color: blue">=&quot;Bottom&quot;/&gt;
    &lt;/</span><span style="color: #a31515">Grid</span><span style="color: blue">&gt;
    &lt;</span><span style="color: #a31515">Button </span><span style="color: red">Grid.Row</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">Content</span><span style="color: blue">=&quot;Reset&quot; </span><span style="color: red">Click</span><span style="color: blue">=&quot;Button_Click&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;8,0,8,0&quot; </span><span style="color: red">Height</span><span style="color: blue">=&quot;30&quot; /&gt;
&lt;/</span><span style="color: #a31515">Grid</span><span style="color: blue">&gt;</span></pre>
<p>So there you go.&#160; The XAML is fairly simple – it uses some of the Silverlight SDK controls (DataForm, DataGrid, and Calendar) as well as the Toolkit’s Chart control.&#160; A few folks in the comments of the original post remarked on the behavior of the controls here.&#160; Some fun things to notice: the Chart, DataGrid, and DataForm are all bound to the same collection.&#160; Furthermore, their SelectedItems are all bound together as well.&#160; The result is that changing a value in the DataGrid or DataForm will move it in the chart and update its value in the other controls.&#160; All cool stuff, even though I put it in the app to throw you off!</p>
<p>You’ll notice that I used ElementName binding – new in SL3 (imported from WPF XAML) to accomplish all of this behavior.&#160; With ElementName binding and many of the other new Silverlight features, you can really make rich, dynamic applications with very little code.&#160; And with the new features in the Blend 3 preview, building this app was easier than ever.&#160; The new Sample Data feature in Blend 3 is great for prototyping:</p>
<p><a href="http://www.davidpoll.com/wp-content/uploads/2009/05/image2.png"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Blend 3&#39;s Sample Data feature makes prototyping easy!" border="0" alt="Blend 3&#39;s Sample Data feature makes prototyping easy!" src="http://www.davidpoll.com/wp-content/uploads/2009/05/image-thumb1.png" width="556" height="340" /></a></p>
<p>With the Sample Data feature, you can define a data source (as I did above) and add fields that are simple (strings, ints, etc.), complex (objects on which you can add other fields&quot;), or collections.&#160; Blend will generate sample data ranging from <a href="http://en.wikipedia.org/wiki/Lorem_ipsum">lorem ipsum</a> text to random numbers.&#160; You can then bind your UI to this sample data and use the binding UI in Blend to set up your bindings:</p>
<p><a href="http://www.davidpoll.com/wp-content/uploads/2009/05/image3.png"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="Editing bindings in Blend 3 is easy!" border="0" alt="Editing bindings in Blend 3 is easy!" src="http://www.davidpoll.com/wp-content/uploads/2009/05/image-thumb2.png" width="459" height="434" /></a></p>
<p>Again, very cool stuff.&#160; Blend 3 and Silverlight 3 make it really easy to construct rich UI for your application and do it quickly.&#160; All in all, building this piece of the mystery application using Blend 3 took me no more than an hour, and the only reason it took that long is that I spent some time playing with some of the Blend features and the Chart control!</p>
<p>&#160;</p>
<p><strong><em>Ok, ok, I’m stalling, I know…</em></strong></p>
<p>&#160;</p>
<p>I guess it’s time for me to reveal what the <strong><em>real</em></strong> Easter Egg is.&#160; “All of that Silverlight 3 and Blend 3 stuff is great…”, I’m sure you’re saying, “but get to the secret already!”</p>
<p>First, let me outline the hints I gave:</p>
<ul>
<li>I pointed you to <a href="http://www.gizmodo.com">gizmodo.com</a> – an article that appeared the day of the post.&#160; That morning, a fun little article about an <a href="http://gizmodo.com/5245751/the-konami-code-works-on-facebook" target="_blank">Easter Egg on a popular social networking site</a> appeared. </li>
<li>In the comments, I pointed out that the business-like functionality was too serious of a guess! </li>
<li>The Reset button actually does something. </li>
</ul>
<p>In truth, really only the first hint would give you and idea of what to do with this application.&#160; Without taking a look there, you weren’t likely to figure out what to do with my application.</p>
<p>So, if you haven’t already figured it out from my revelations above, the easter egg in my application is that the <a href="http://en.wikipedia.org/wiki/Konami_code" target="_blank">Konami Code</a> makes a super-secret special message appear!&#160; I figured if it’s good enough for Facebook, it’s good enough for me!&#160; Here’s what you need to do:</p>
<p>Click the application to give it focus.&#160; Hit the following keys:</p>
<p><strong><em>Up, Up, Down, Down, Left, Right, Left, Right, B, A</em></strong></p>
<p>And observe!</p>
<p><a href="http://www.davidpoll.com/wp-content/uploads/2009/05/image4.png"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="&quot;UberCool!&quot; shown in the Mystery Application" border="0" alt="&quot;UberCool!&quot; shown in the Mystery Application" src="http://www.davidpoll.com/wp-content/uploads/2009/05/image-thumb3.png" width="443" height="333" /></a></p>
<p>And true to form, the Reset button will hid the message and allow you to re-enter the code.</p>
<p>Enabling this functionality turns out to be pretty simple.&#160; For the purposes of this mystery application, I created a KonamiCode control that simply changes its <a href="http://silverlight.net/learn/tutorials/StylesTemplatesVSM.aspx" target="_blank">visual state</a> once the code is entered.&#160; Its template uses the new easing functions (very easy to set up in a visual state transition in Blend 3) in Silverlight to animate the rotation of the “secret message.”&#160; The KonamiCode control is a ContentControl, and listens for key presses on its content.&#160; For kicks, I made the control work more generally, allowing a developer to specify the keystrokes that will trigger the visual state change.&#160; Who knows, maybe someone will find something more useful to do with it!</p>
<p>With the KonamiCode control, you too can add the Konami Code Easter Egg to your Silverlight 3 applications!&#160; It’s as simple as wrapping your UI in the control, like so:</p>
<pre class="code"><strong><em><span style="color: blue">&lt;</span><span style="color: #a31515">KonamiCode</span><span style="color: blue">:</span><span style="color: #a31515">KonamiCodeControl </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span></em></strong><span style="color: blue"><strong><em>=&quot;kcc&quot;&gt;</em></strong>
    &lt;</span><span style="color: #a31515">Grid </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;LayoutRoot&quot; </span><span style="color: red">Background</span><span style="color: blue">=&quot;White&quot;&gt;
        &lt;</span><span style="color: #a31515">Grid.RowDefinitions</span><span style="color: blue">&gt;
            &lt;</span><span style="color: #a31515">RowDefinition </span><span style="color: blue">/&gt;
            &lt;</span><span style="color: #a31515">RowDefinition </span><span style="color: red">Height</span><span style="color: blue">=&quot;Auto&quot; /&gt;
        &lt;/</span><span style="color: #a31515">Grid.RowDefinitions</span><span style="color: blue">&gt;
        &lt;</span><span style="color: #a31515">Grid </span><span style="color: red">DataContext</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Source</span><span style="color: blue">={</span><span style="color: #a31515">StaticResource </span><span style="color: red">SampleDataSource</span><span style="color: blue">}}&quot;&gt;
            &lt;</span><span style="color: #a31515">dataControls</span><span style="color: blue">:</span><span style="color: #a31515">DataForm </span><span style="color: red">CurrentIndex</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">ElementName</span><span style="color: blue">=dg, </span><span style="color: red">Mode</span><span style="color: blue">=TwoWay, </span><span style="color: red">Path</span><span style="color: blue">=SelectedIndex}&quot; </span><span style="color: red">HorizontalAlignment</span><span style="color: blue">=&quot;Right&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;0,8,8,223&quot; </span><span style="color: red">Width</span><span style="color: blue">=&quot;267&quot; </span><span style="color: red">ItemsSource</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Mode</span><span style="color: blue">=OneWay, </span><span style="color: red">Path</span><span style="color: blue">=Collection}&quot;/&gt;
            &lt;</span><span style="color: #a31515">chartingToolkit</span><span style="color: blue">:</span><span style="color: #a31515">Chart </span><span style="color: red">Height</span><span style="color: blue">=&quot;211&quot; </span><span style="color: red">HorizontalAlignment</span><span style="color: blue">=&quot;Right&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;0,0,8,8&quot; </span><span style="color: red">DataContext</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Mode</span><span style="color: blue">=OneWay, </span><span style="color: red">Path</span><span style="color: blue">=Collection}&quot; </span><span style="color: red">VerticalAlignment</span><span style="color: blue">=&quot;Bottom&quot; </span><span style="color: red">Width</span><span style="color: blue">=&quot;267&quot; </span><span style="color: red">Title</span><span style="color: blue">=&quot;Chart Title&quot;&gt;
                &lt;</span><span style="color: #a31515">chartingToolkit</span><span style="color: blue">:</span><span style="color: #a31515">ScatterSeries </span><span style="color: red">SelectedItem</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">ElementName</span><span style="color: blue">=dg, </span><span style="color: red">Mode</span><span style="color: blue">=TwoWay, </span><span style="color: red">Path</span><span style="color: blue">=SelectedItem}&quot; </span><span style="color: red">DependentValuePath</span><span style="color: blue">=&quot;Y&quot; </span><span style="color: red">IndependentValuePath</span><span style="color: blue">=&quot;X&quot; </span><span style="color: red">ItemsSource</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Mode</span><span style="color: blue">=OneWay}&quot; </span><span style="color: red">AnimationSequence</span><span style="color: blue">=&quot;FirstToLast&quot; </span><span style="color: red">IsSelectionEnabled</span><span style="color: blue">=&quot;True&quot;/&gt;
            &lt;/</span><span style="color: #a31515">chartingToolkit</span><span style="color: blue">:</span><span style="color: #a31515">Chart</span><span style="color: blue">&gt;
            &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGrid </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;dg&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;8,8,279,223&quot; </span><span style="color: red">ItemsSource</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Mode</span><span style="color: blue">=OneWay, </span><span style="color: red">Path</span><span style="color: blue">=Collection}&quot; </span><span style="color: red">AutoGenerateColumns</span><span style="color: blue">=&quot;False&quot;&gt;
                &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGrid.Columns</span><span style="color: blue">&gt;
                    &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Bar&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Bar}&quot;/&gt;
                    &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Bat&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Bat}&quot;/&gt;
                    &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Baz&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Baz}&quot;/&gt;
                    &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Foo&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Foo}&quot;/&gt;
                    &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Title&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Title}&quot;/&gt;
                    &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;X&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=X}&quot;/&gt;
                    &lt;</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGridTextColumn </span><span style="color: red">Header</span><span style="color: blue">=&quot;Y&quot; </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Path</span><span style="color: blue">=Y}&quot;/&gt;
                &lt;/</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGrid.Columns</span><span style="color: blue">&gt;
            &lt;/</span><span style="color: #a31515">data</span><span style="color: blue">:</span><span style="color: #a31515">DataGrid</span><span style="color: blue">&gt;
            &lt;</span><span style="color: #a31515">controls</span><span style="color: blue">:</span><span style="color: #a31515">Calendar </span><span style="color: red">Height</span><span style="color: blue">=&quot;211&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;8,0,279,8&quot; </span><span style="color: red">VerticalAlignment</span><span style="color: blue">=&quot;Bottom&quot;/&gt;
        &lt;/</span><span style="color: #a31515">Grid</span><span style="color: blue">&gt;
        &lt;</span><span style="color: #a31515">Button </span><span style="color: red">Grid.Row</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">Content</span><span style="color: blue">=&quot;Reset&quot; </span><span style="color: red">Click</span><span style="color: blue">=&quot;Button_Click&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;8,0,8,0&quot; </span><span style="color: red">Height</span><span style="color: blue">=&quot;30&quot; /&gt;
    &lt;/</span><span style="color: #a31515">Grid</span><span style="color: blue">&gt;
<strong><em>&lt;/</em></strong></span><strong><em><span style="color: #a31515">KonamiCode</span><span style="color: blue">:</span><span style="color: #a31515">KonamiCodeControl</span><span style="color: blue">&gt;</span></em></strong></pre>
<p><a href="http://11011.net/software/vspaste"></a></p>
<p>Anyhoo, here’s the code.&#160; You can download either just the control or the full source for the Mystery Application:</p>
<ul>
<li><a href="http://www.davidpoll.com/Download/KonamiCode.zip" target="_blank">KonamiCode Control source</a> </li>
<li><a href="http://www.davidpoll.com/Download/MysterySilverlightApplication.zip" target="_blank">Mystery Application source</a> </li>
</ul>
<p>Enjoy!&#160; And let me know what you think!&#160; Even RIA apps deserve to have a little fun, and I hope this brings countless <strike>hours</strike> minutes of entertainment to folks reading my blog! <img src='http://www.davidpoll.com/wp-includes/images/smilies/icon_smile.gif' alt=':)' class='wp-smiley' /> </p>
<p>&#160;</p>
<p><strong><em></em></strong></p>
<p><strong><em></em></strong></p>
<p><strong><em>UPDATE:</em></strong> 5/19/2009 – 12:52 AM.&#160; Ok, just after I posted this, the following appeared on my WordPress admin dashboard.&#160; So perfect:</p>
<p><a href="http://www.davidpoll.com/wp-content/uploads/2009/05/image5.png"><img style="border-right-width: 0px; display: block; float: none; border-top-width: 0px; border-bottom-width: 0px; margin-left: auto; border-left-width: 0px; margin-right: auto" title="WP-Konami WordPress plugin" border="0" alt="WP-Konami WordPress plugin" src="http://www.davidpoll.com/wp-content/uploads/2009/05/image-thumb4.png" width="291" height="84" /></a></p>
<p>Furthermore, this plugin directed me to this site:&#160; <a title="http://konamicodesites.com/" href="http://konamicodesites.com/">http://konamicodesites.com/</a></p>
<p>I’ll have to get listed!</p>
<p>&#160;</p>
<p><strong><em>P.S.</em></strong> My colleague, coworker, and fellow PM <a href="http://blogs.msdn.com/scmorris/" target="_blank">Scott Morrison</a> just returned from TechEd 2009 and posted some of the great <a href="http://blogs.msdn.com/scmorris/archive/2009/05/17/tech-ed-2009-demo-files.aspx" target="_blank">Silverlight 3 and .NET RIA Services content</a> that he demoed there.&#160; Check it out!</p>
<p><strong><em>Update: 7/11/2009 9:48 PM</em></strong> – Samples updated for Silverlight 3!</p>
<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.davidpoll.com/2009/05/19/playing-around-with-silverlight-3-a-late-easter-egg-hunt-revealed/feed/</wfw:commentRss>
		<slash:comments>9</slash:comments>
		</item>
		<item>
		<title>Playing around with Silverlight 3… a late Easter Egg hunt.</title>
		<link>http://www.davidpoll.com/2009/05/08/playing-around-with-silverlight-3-a-late-easter-egg-hunt/</link>
		<comments>http://www.davidpoll.com/2009/05/08/playing-around-with-silverlight-3-a-late-easter-egg-hunt/#comments</comments>
		<pubDate>Sat, 09 May 2009 06:53:10 +0000</pubDate>
		<dc:creator>david.poll</dc:creator>
				<category><![CDATA[Silverlight]]></category>
		<category><![CDATA[Fun]]></category>
		<category><![CDATA[Konami Code]]></category>

		<guid isPermaLink="false">http://www.davidpoll.com/?p=32</guid>
		<description><![CDATA[Ok, I admit it – I can be a little bit silly sometimes.&#160; I saw some entertaining articles on some popular tech websites today (e.g. gizmodo.com) and was inspired.&#160; Inspired, that is, to do something a little less… useful.&#160; So, I quickly coded up a little Silverlight 3 application using Blend 3 Preview, Visual Studio, [...]]]></description>
			<content:encoded><![CDATA[<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_start --><p>Ok, I admit it – I can be a little bit silly sometimes.&#160; I saw some entertaining articles on some popular tech websites today (e.g. <a href="http://gizmodo.com">gizmodo.com</a>) and was inspired.&#160; Inspired, that is, to do something a little less… useful.&#160; So, I quickly coded up a little <a href="http://silverlight.net/getstarted/silverlight3/default.aspx">Silverlight 3</a> application using <a href="http://www.microsoft.com/expression/blendpreview">Blend 3 Preview</a>, Visual Studio, and a little too much time to myself.</p>
<p>Since this was a quick code-up job, I will apologize in advance for not snazzing it up very much.&#160; Nonetheless, it does the trick.</p>
<p>So, here’s the challenge: can you figure out what this Silverlight application does?&#160; By the way, <em>no cheating!</em>&#160; Don’t spoil the surprise by cracking open the XAP or opening it up in reflector.&#160; I promise I’ll reveal the answer soon.&#160; In a few days, I’ll post the source (it’s tiny) and let you play around with it!</p>
<p>Note – running the app requires Silverlight 3, which you can get <a href="http://silverlight.net/getstarted/silverlight3/default.aspx">here</a>.</p>
<p>Give it a shot, and leave a comment if you figure it out!&#160; The app follows…</p>
<p> <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="640" height="480px"><param name="source" value="http://www.davidpoll.com/Samples/Mystery5-8-08/MysterySilverlightApplication.xap" /><param name="onerror" value="onSilverlightError" /><param name="background" value="white" /><param name="minRuntimeVersion" value="3.0.40624.0" /><param name="autoUpgrade" value="false" /><a href="http://go.microsoft.com/fwlink/?LinkID=141205" style="text-decoration: none;">      			<img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style: none" /> 			</a> 		</object>
<p><iframe style="border-right-width: 0px; width: 0px; border-top-width: 0px; border-bottom-width: 0px; height: 0px; visibility: hidden; border-left-width: 0px"></iframe></p>
<p>&#160;</p>
<p><strong><em>Update: 5/19/2009 1:22 AM: </em></strong>I have <a href="http://www.davidpoll.com/?p=57" target="_blank">revealed the secret of the app</a>!&#160; Take a look!</p>
<p><strong><em>Update: 7/11/2009 9:45 PM: </em></strong>Samples updated for the release of Silverlight 3!</p>
<!-- Advanced AdSense by Jim Gaudet --><!-- google_ad_section_end -->]]></content:encoded>
			<wfw:commentRss>http://www.davidpoll.com/2009/05/08/playing-around-with-silverlight-3-a-late-easter-egg-hunt/feed/</wfw:commentRss>
		<slash:comments>5</slash:comments>
		</item>
	</channel>
</rss>
