<?xml version="1.0" encoding="UTF-8"?>
<?xml-stylesheet type="text/xsl" media="screen" href="/~d/styles/rss2full.xsl"?><?xml-stylesheet type="text/css" media="screen" href="http://feeds.feedburner.com/~d/styles/itemcontent.css"?><rss 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/" xmlns:feedburner="http://rssnamespace.org/feedburner/ext/1.0" version="2.0">

<channel>
	<title>WiredPrairie</title>
	
	<link>http://www.wiredprairie.us/blog</link>
	<description>A little bit of everything: software, usability, .NET, WPF, design, ASP.NET, Silverlight, and more!</description>
	<lastBuildDate>Tue, 24 Aug 2010 12:34:27 +0000</lastBuildDate>
	<language>en</language>
	<sy:updatePeriod>hourly</sy:updatePeriod>
	<sy:updateFrequency>1</sy:updateFrequency>
	<generator>http://wordpress.org/?v=3.0.1</generator>
		<atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="self" type="application/rss+xml" href="http://feeds.feedburner.com/wiredprairie" /><feedburner:info uri="wiredprairie" /><atom10:link xmlns:atom10="http://www.w3.org/2005/Atom" rel="hub" href="http://pubsubhubbub.appspot.com/" /><feedburner:feedFlare href="http://add.my.yahoo.com/rss?url=http%3A%2F%2Ffeeds.feedburner.com%2Fwiredprairie" src="http://us.i1.yimg.com/us.yimg.com/i/us/my/addtomyyahoo4.gif">Subscribe with My Yahoo!</feedburner:feedFlare><feedburner:feedFlare href="http://www.newsgator.com/ngs/subscriber/subext.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fwiredprairie" src="http://www.newsgator.com/images/ngsub1.gif">Subscribe with NewsGator</feedburner:feedFlare><feedburner:feedFlare href="http://feeds.my.aol.com/add.jsp?url=http%3A%2F%2Ffeeds.feedburner.com%2Fwiredprairie" src="http://o.aolcdn.com/favorites.my.aol.com/webmaster/ffclient/webroot/locale/en-US/images/myAOLButtonSmall.gif">Subscribe with My AOL</feedburner:feedFlare><feedburner:feedFlare href="http://www.bloglines.com/sub/http://feeds.feedburner.com/wiredprairie" src="http://www.bloglines.com/images/sub_modern11.gif">Subscribe with Bloglines</feedburner:feedFlare><feedburner:feedFlare href="http://www.netvibes.com/subscribe.php?url=http%3A%2F%2Ffeeds.feedburner.com%2Fwiredprairie" src="http://www.netvibes.com/img/add2netvibes.gif">Subscribe with Netvibes</feedburner:feedFlare><feedburner:feedFlare href="http://fusion.google.com/add?feedurl=http%3A%2F%2Ffeeds.feedburner.com%2Fwiredprairie" src="http://buttons.googlesyndication.com/fusion/add.gif">Subscribe with Google</feedburner:feedFlare><feedburner:feedFlare href="http://www.pageflakes.com/subscribe.aspx?url=http%3A%2F%2Ffeeds.feedburner.com%2Fwiredprairie" src="http://www.pageflakes.com/ImageFile.ashx?instanceId=Static_4&amp;fileName=ATP_blu_91x17.gif">Subscribe with Pageflakes</feedburner:feedFlare><feedburner:feedFlare href="http://www.live.com/?add=http%3A%2F%2Ffeeds.feedburner.com%2Fwiredprairie" src="http://tkfiles.storage.msn.com/x1piYkpqHC_35nIp1gLE68-wvzLZO8iXl_JMledmJQXP-XTBOLfmQv4zhj4MhcWEJh_GtoBIiAl1Mjh-ndp9k47If7hTaFno0mxW9_i3p_5qQw">Subscribe with Live.com</feedburner:feedFlare><item>
		<title>From the Department of Uselessness</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/6EnNWijSUkM/1123</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1123#comments</comments>
		<pubDate>Tue, 24 Aug 2010 12:34:27 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Usability]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1123</guid>
		<description><![CDATA[How many comments are there when one of the comments has been removed? In this instance, apparently the count was 2. If a second comment was not a reply to a first comment (which from the structure of the UI, I don’t believe it was), why indicate “this comment has been removed” and include it [...]]]></description>
			<content:encoded><![CDATA[<p>How many comments are there when one of the comments has been removed? </p>
<p>In this instance, apparently the count was 2. </p>
<p><img style="background-image: none; border-bottom: 0px; border-left: 0px; padding-left: 0px; padding-right: 0px; display: inline; border-top: 0px; border-right: 0px; padding-top: 0px" title="SNAGHTML1ed5e447" border="0" alt="SNAGHTML1ed5e447" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/08/SNAGHTML1ed5e447.png" width="410" height="214" /></p>
<p>If a second comment was not a reply to a first comment (which from the structure of the UI, I don’t believe it was), why indicate “this comment has been removed” and include it in the count?&#160; </p>
<p><strong>Aye. Programmers</strong>. Can’t live with them. Can’t live without them.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/q8ilYwI6wiSPiEtlSqD6wfNHn9M/0/da"><img src="http://feedads.g.doubleclick.net/~a/q8ilYwI6wiSPiEtlSqD6wfNHn9M/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/q8ilYwI6wiSPiEtlSqD6wfNHn9M/1/da"><img src="http://feedads.g.doubleclick.net/~a/q8ilYwI6wiSPiEtlSqD6wfNHn9M/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=6EnNWijSUkM:Qb2pcmzZimA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=6EnNWijSUkM:Qb2pcmzZimA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=6EnNWijSUkM:Qb2pcmzZimA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=6EnNWijSUkM:Qb2pcmzZimA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=6EnNWijSUkM:Qb2pcmzZimA:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=6EnNWijSUkM:Qb2pcmzZimA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=6EnNWijSUkM:Qb2pcmzZimA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=6EnNWijSUkM:Qb2pcmzZimA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=6EnNWijSUkM:Qb2pcmzZimA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=6EnNWijSUkM:Qb2pcmzZimA:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/6EnNWijSUkM" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1123/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1123</feedburner:origLink></item>
		<item>
		<title>On Twitter, follow wiredprairie.</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/4rejYcM4Obg/1121</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1121#comments</comments>
		<pubDate>Tue, 24 Aug 2010 01:53:50 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1121</guid>
		<description><![CDATA[I’ve been using twitter a bit more recently, and posting less to my blog. I just haven’t been compelled to write much. I’ve got a few things queued up though and as soon as I finish the details, I’ll get some new posts up. But, in the mean time, feel free to follow me on [...]]]></description>
			<content:encoded><![CDATA[<p>I’ve been using twitter a bit more recently, and posting less to my blog. I just haven’t been compelled to write much. I’ve got a few things queued up though and as soon as I finish the details, I’ll get some new posts up.</p>
<p>But, in the mean time, feel free to follow me on twitter: <a href="www.twitter.com/wiredprairie">wiredprairie</a>. Maybe I’ll see you on twitter!</p>
<p>I promise not to tweet too much. Certainly not too much about bowel movements or the details of the meals that preceded them. <img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/08/wlEmoticonsmile.png" /></p>

<p><a href="http://feedads.g.doubleclick.net/~a/9-U2kcul5FgwvdVuN4k6qHA0btw/0/da"><img src="http://feedads.g.doubleclick.net/~a/9-U2kcul5FgwvdVuN4k6qHA0btw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/9-U2kcul5FgwvdVuN4k6qHA0btw/1/da"><img src="http://feedads.g.doubleclick.net/~a/9-U2kcul5FgwvdVuN4k6qHA0btw/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=4rejYcM4Obg:3qUVzLt2frg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=4rejYcM4Obg:3qUVzLt2frg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=4rejYcM4Obg:3qUVzLt2frg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=4rejYcM4Obg:3qUVzLt2frg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=4rejYcM4Obg:3qUVzLt2frg:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=4rejYcM4Obg:3qUVzLt2frg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=4rejYcM4Obg:3qUVzLt2frg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=4rejYcM4Obg:3qUVzLt2frg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=4rejYcM4Obg:3qUVzLt2frg:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=4rejYcM4Obg:3qUVzLt2frg:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/4rejYcM4Obg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1121/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1121</feedburner:origLink></item>
		<item>
		<title>Windows Phone 7 Marketplace: Ditch the Annual Fee for Free App Developers!</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/lNp3Xvh9pZY/1119</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1119#comments</comments>
		<pubDate>Tue, 24 Aug 2010 01:46:28 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[General]]></category>
		<category><![CDATA[Phone]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1119</guid>
		<description><![CDATA[Dear Microsoft, A few facts: I’m a competent Silverlight developer. I’ve even dabbled in XNA. I’m an owner of a iPhone 3GS. I would like a new phone. I’d like to buy a phone powered by the Windows Phone 7 OS when it’s made available. I’d like to make some free applications for my phone [...]]]></description>
			<content:encoded><![CDATA[<p>Dear Microsoft,</p>
<p>A few facts:</p>
<ul>
<li>I’m a competent Silverlight developer. I’ve even dabbled in XNA.</li>
<li>I’m an owner of a iPhone 3GS. </li>
<li><strong>I would like a new phone.</strong></li>
<li><strong>I’d like to buy a phone powered by the Windows Phone 7 OS when it’s made available.</strong></li>
<li>I’d like to make some free applications for my phone and others to use. A few for hobbies (like photography), and a few utilities for myself for work.</li>
<li>I don’t however want to spend $99 a year for the privilege of doing so.</li>
</ul>
<p><strong>Why not open it up for people like myself? </strong></p>
<p>Here’s a few alternatives:</p>
<ul>
<li>Make it free for those who make only free applications</li>
<li>Make it free for those who agree to include a Bing-Ad placement component in the application, in a prominent position.</li>
<li>Make it free for those who buy a copy of Visual Studio 2010 and Blend (like myself – I don’t use the Express editions).</li>
<li>Make it free so that there’s no barrier to entry – that people and companies don’t need to worry about the extra fee – just jump on the Windows Phone 7 bandwagon.</li>
</ul>
<p>Without this change, I probably won’t buy a Windows Phone 7, and will start building more HTML 5 web apps, that will work just fine on my iPhone 3GS (powered by iOS4). <img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-sadsmile" alt="Sad smile" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/08/wlEmoticonsadsmile.png" /></p>

<p><a href="http://feedads.g.doubleclick.net/~a/qZteyEWUHfWuC4DMREKzT3q9ELw/0/da"><img src="http://feedads.g.doubleclick.net/~a/qZteyEWUHfWuC4DMREKzT3q9ELw/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/qZteyEWUHfWuC4DMREKzT3q9ELw/1/da"><img src="http://feedads.g.doubleclick.net/~a/qZteyEWUHfWuC4DMREKzT3q9ELw/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=lNp3Xvh9pZY:UchIiEzPOmA:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=lNp3Xvh9pZY:UchIiEzPOmA:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=lNp3Xvh9pZY:UchIiEzPOmA:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=lNp3Xvh9pZY:UchIiEzPOmA:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=lNp3Xvh9pZY:UchIiEzPOmA:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=lNp3Xvh9pZY:UchIiEzPOmA:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=lNp3Xvh9pZY:UchIiEzPOmA:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=lNp3Xvh9pZY:UchIiEzPOmA:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=lNp3Xvh9pZY:UchIiEzPOmA:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=lNp3Xvh9pZY:UchIiEzPOmA:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/lNp3Xvh9pZY" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1119/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1119</feedburner:origLink></item>
		<item>
		<title>Are DIVs really better than TABLEs?</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/BRe_SidJiS4/1117</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1117#comments</comments>
		<pubDate>Thu, 05 Aug 2010 01:15:39 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Coding]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1117</guid>
		<description><![CDATA[The screen shot at the end of this post shows some of the HTML behind the main gmail.com page. I never looked before, so it came as a shock to me how many DIVs were used to construct the page. There are more than are visible as the document scrolled and I had only opened [...]]]></description>
			<content:encoded><![CDATA[<p>The screen shot at the end of this post shows some of the HTML behind the main gmail.com page. I never looked before, so it came as a shock to me how many DIVs were used to construct the page. There are more than are visible as the document scrolled and I had only opened a particular sub-branch of the page.</p>
<p>According to the Chrome Developer Tools, there are 590 DIVs (in my inbox)!</p>
<p><img style="border-bottom: 0px; border-left: 0px; margin: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/08/image.png" width="169" height="27" /></p>
<p>So, are DIVs really better than TABLEs? Tables would be used to present data, and not just for layout in the case of Gmail.</p>
<p>Gmail has 11 TABLE elements on the page:</p>
<p><img style="border-bottom: 0px; border-left: 0px; margin: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/08/image1.png" width="164" height="29" /></p>
<p>What would you do if you were creating a messaging application like Gmail?</p>
<p><img style="border-bottom: 0px; border-left: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/08/image2.png" width="453" height="768" /></p>

<p><a href="http://feedads.g.doubleclick.net/~a/HOiqhdm0VjmF04b42oASUY7emC8/0/da"><img src="http://feedads.g.doubleclick.net/~a/HOiqhdm0VjmF04b42oASUY7emC8/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/HOiqhdm0VjmF04b42oASUY7emC8/1/da"><img src="http://feedads.g.doubleclick.net/~a/HOiqhdm0VjmF04b42oASUY7emC8/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=BRe_SidJiS4:ajbtp938XsY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=BRe_SidJiS4:ajbtp938XsY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=BRe_SidJiS4:ajbtp938XsY:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=BRe_SidJiS4:ajbtp938XsY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=BRe_SidJiS4:ajbtp938XsY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=BRe_SidJiS4:ajbtp938XsY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=BRe_SidJiS4:ajbtp938XsY:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=BRe_SidJiS4:ajbtp938XsY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=BRe_SidJiS4:ajbtp938XsY:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=BRe_SidJiS4:ajbtp938XsY:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/BRe_SidJiS4" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1117/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1117</feedburner:origLink></item>
		<item>
		<title>How to bind ListBoxItem.IsSelected to a bound item in Silverlight 4.0</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/x4-IBavATio/1113</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1113#comments</comments>
		<pubDate>Tue, 27 Jul 2010 01:56:17 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1113</guid>
		<description><![CDATA[This technique requires the Blend 4.0 SDK (which is included in Blend 4.0 and is also available as a free download. Someone on StackOverflow asked how to bind a collection of items to a ListBox in Silverlight where the IsSelected property of the ListBoxItem is bound to an IsSelected property of the data item. WPF [...]]]></description>
			<content:encoded><![CDATA[<p>This technique requires the Blend 4.0 SDK (which is included in Blend 4.0 and is also available as a <a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=d197f51a-de07-4edf-9cba-1f1b4a22110d&amp;displaylang=en">free download</a>.</p>
<p>Someone on StackOverflow asked how to bind a collection of items to a ListBox in Silverlight where the IsSelected property of the ListBoxItem is bound to an IsSelected property of the data item. </p>
<p>WPF has the native ability within a style to set the a style’s setter property IsSelected to a value of the two way binding to an IsSelected Property. Slick.</p>
<p>Silverlight, has no such thing unfortunately.</p>
<p>But, there’s a work around that isn’t too awful. Seriously.</p>
<p><img style="border-bottom: 0px; border-left: 0px; margin: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/07/image2.png" width="335" height="204" /></p>
<p>What I’ve done is mapped the look and feel of the ListBoxItem selection to the DataTemplate for the item and removed it from the standard ListBoxItemContainer style:</p>
<pre class="code"><span style="color: blue">&lt;</span><span style="color: #a31515">UserControl
    </span><span style="color: red">xmlns</span><span style="color: blue">=&quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&quot;
    </span><span style="color: red">xmlns</span><span style="color: blue">:</span><span style="color: red">x</span><span style="color: blue">=&quot;http://schemas.microsoft.com/winfx/2006/xaml&quot;
    </span><span style="color: red">xmlns</span><span style="color: blue">:</span><span style="color: red">d</span><span style="color: blue">=&quot;http://schemas.microsoft.com/expression/blend/2008&quot;
    </span><span style="color: red">xmlns</span><span style="color: blue">:</span><span style="color: red">mc</span><span style="color: blue">=&quot;http://schemas.openxmlformats.org/markup-compatibility/2006&quot;
    </span><span style="color: red">xmlns</span><span style="color: blue">:</span><span style="color: red">local</span><span style="color: blue">=&quot;clr-namespace:TestSilverlightTodoListItem&quot; </span><span style="color: red">xmlns</span><span style="color: blue">:</span><span style="color: red">i</span><span style="color: blue">=&quot;http://schemas.microsoft.com/expression/2010/interactivity&quot; </span><span style="color: red">xmlns</span><span style="color: blue">:</span><span style="color: red">ei</span><span style="color: blue">=&quot;http://schemas.microsoft.com/expression/2010/interactions&quot; </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Class</span><span style="color: blue">=&quot;TestSilverlightTodoListItem.MainPage&quot;
    </span><span style="color: red">mc</span><span style="color: blue">:</span><span style="color: red">Ignorable</span><span style="color: blue">=&quot;d&quot;
    </span><span style="color: red">d</span><span style="color: blue">:</span><span style="color: red">DesignHeight</span><span style="color: blue">=&quot;300&quot; </span><span style="color: red">d</span><span style="color: blue">:</span><span style="color: red">DesignWidth</span><span style="color: blue">=&quot;400&quot;&gt;

    &lt;</span><span style="color: #a31515">UserControl.Resources</span><span style="color: blue">&gt;        

        &lt;</span><span style="color: #a31515">local</span><span style="color: blue">:</span><span style="color: #a31515">PeopleList </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Key</span><span style="color: blue">=&quot;PeopleListDataSource&quot; </span><span style="color: red">d</span><span style="color: blue">:</span><span style="color: red">IsDataSource</span><span style="color: blue">=&quot;True&quot;/&gt;        

        &lt;</span><span style="color: #a31515">Style </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Key</span><span style="color: blue">=&quot;ListBoxItemStyle1&quot; </span><span style="color: red">TargetType</span><span style="color: blue">=&quot;ListBoxItem&quot;&gt;
            &lt;</span><span style="color: #a31515">Setter </span><span style="color: red">Property</span><span style="color: blue">=&quot;Padding&quot; </span><span style="color: red">Value</span><span style="color: blue">=&quot;3&quot;/&gt;
            &lt;</span><span style="color: #a31515">Setter </span><span style="color: red">Property</span><span style="color: blue">=&quot;HorizontalContentAlignment&quot; </span><span style="color: red">Value</span><span style="color: blue">=&quot;Stretch&quot;/&gt;
            &lt;</span><span style="color: #a31515">Setter </span><span style="color: red">Property</span><span style="color: blue">=&quot;VerticalContentAlignment&quot; </span><span style="color: red">Value</span><span style="color: blue">=&quot;Top&quot;/&gt;
            &lt;</span><span style="color: #a31515">Setter </span><span style="color: red">Property</span><span style="color: blue">=&quot;Background&quot; </span><span style="color: red">Value</span><span style="color: blue">=&quot;Transparent&quot;/&gt;
            &lt;</span><span style="color: #a31515">Setter </span><span style="color: red">Property</span><span style="color: blue">=&quot;BorderThickness&quot; </span><span style="color: red">Value</span><span style="color: blue">=&quot;1&quot;/&gt;
            &lt;</span><span style="color: #a31515">Setter </span><span style="color: red">Property</span><span style="color: blue">=&quot;TabNavigation&quot; </span><span style="color: red">Value</span><span style="color: blue">=&quot;Local&quot;/&gt;
            &lt;</span><span style="color: #a31515">Setter </span><span style="color: red">Property</span><span style="color: blue">=&quot;Template&quot;&gt;
                &lt;</span><span style="color: #a31515">Setter.Value</span><span style="color: blue">&gt;
                    &lt;</span><span style="color: #a31515">ControlTemplate </span><span style="color: red">TargetType</span><span style="color: blue">=&quot;ListBoxItem&quot;&gt;
                        &lt;</span><span style="color: #a31515">Grid </span><span style="color: red">Background</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">TemplateBinding </span><span style="color: red">Background</span><span style="color: blue">}&quot;&gt;
                            &lt;</span><span style="color: #a31515">VisualStateManager.VisualStateGroups</span><span style="color: blue">&gt;
                                &lt;</span><span style="color: #a31515">VisualStateGroup </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;CommonStates&quot;&gt;
                                    &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Normal&quot;/&gt;
                                    &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;MouseOver&quot;&gt;
                                    &lt;/</span><span style="color: #a31515">VisualState</span><span style="color: blue">&gt;
                                    &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Disabled&quot;&gt;
                                    &lt;/</span><span style="color: #a31515">VisualState</span><span style="color: blue">&gt;
                                &lt;/</span><span style="color: #a31515">VisualStateGroup</span><span style="color: blue">&gt;
                                &lt;</span><span style="color: #a31515">VisualStateGroup </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;SelectionStates&quot;&gt;
                                    &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Unselected&quot;/&gt;
                                    &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Selected&quot;&gt;
                                    &lt;/</span><span style="color: #a31515">VisualState</span><span style="color: blue">&gt;
                                &lt;/</span><span style="color: #a31515">VisualStateGroup</span><span style="color: blue">&gt;
                                &lt;</span><span style="color: #a31515">VisualStateGroup </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;FocusStates&quot;&gt;
                                    &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Focused&quot;&gt;
                                        &lt;</span><span style="color: #a31515">Storyboard</span><span style="color: blue">&gt;
                                            &lt;</span><span style="color: #a31515">ObjectAnimationUsingKeyFrames </span><span style="color: red">Duration</span><span style="color: blue">=&quot;0&quot; </span><span style="color: red">Storyboard.TargetProperty</span><span style="color: blue">=&quot;Visibility&quot; </span><span style="color: red">Storyboard.TargetName</span><span style="color: blue">=&quot;FocusVisualElement&quot;&gt;
                                                &lt;</span><span style="color: #a31515">DiscreteObjectKeyFrame </span><span style="color: red">KeyTime</span><span style="color: blue">=&quot;0&quot;&gt;
                                                    &lt;</span><span style="color: #a31515">DiscreteObjectKeyFrame.Value</span><span style="color: blue">&gt;
                                                        &lt;</span><span style="color: #a31515">Visibility</span><span style="color: blue">&gt;</span><span style="color: #a31515">Visible</span><span style="color: blue">&lt;/</span><span style="color: #a31515">Visibility</span><span style="color: blue">&gt;
                                                    &lt;/</span><span style="color: #a31515">DiscreteObjectKeyFrame.Value</span><span style="color: blue">&gt;
                                                &lt;/</span><span style="color: #a31515">DiscreteObjectKeyFrame</span><span style="color: blue">&gt;
                                            &lt;/</span><span style="color: #a31515">ObjectAnimationUsingKeyFrames</span><span style="color: blue">&gt;
                                        &lt;/</span><span style="color: #a31515">Storyboard</span><span style="color: blue">&gt;
                                    &lt;/</span><span style="color: #a31515">VisualState</span><span style="color: blue">&gt;
                                    &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Unfocused&quot;/&gt;
                                &lt;/</span><span style="color: #a31515">VisualStateGroup</span><span style="color: blue">&gt;
                            &lt;/</span><span style="color: #a31515">VisualStateManager.VisualStateGroups</span><span style="color: blue">&gt;
                            &lt;</span><span style="color: #a31515">ContentPresenter </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;contentPresenter&quot; </span><span style="color: red">ContentTemplate</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">TemplateBinding </span><span style="color: red">ContentTemplate</span><span style="color: blue">}&quot; </span><span style="color: red">Content</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">TemplateBinding </span><span style="color: red">Content</span><span style="color: blue">}&quot; </span><span style="color: red">HorizontalAlignment</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">TemplateBinding </span><span style="color: red">HorizontalContentAlignment</span><span style="color: blue">}&quot; </span><span style="color: red">Margin</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">TemplateBinding </span><span style="color: red">Padding</span><span style="color: blue">}&quot;/&gt;
                            &lt;</span><span style="color: #a31515">Rectangle </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;FocusVisualElement&quot; </span><span style="color: red">RadiusY</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">RadiusX</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">Stroke</span><span style="color: blue">=&quot;#FF6DBDD1&quot; </span><span style="color: red">StrokeThickness</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">Visibility</span><span style="color: blue">=&quot;Collapsed&quot;/&gt;
                        &lt;/</span><span style="color: #a31515">Grid</span><span style="color: blue">&gt;
                    &lt;/</span><span style="color: #a31515">ControlTemplate</span><span style="color: blue">&gt;
                &lt;/</span><span style="color: #a31515">Setter.Value</span><span style="color: blue">&gt;
            &lt;/</span><span style="color: #a31515">Setter</span><span style="color: blue">&gt;
        &lt;/</span><span style="color: #a31515">Style</span><span style="color: blue">&gt;

        &lt;</span><span style="color: #a31515">DataTemplate </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Key</span><span style="color: blue">=&quot;PersonTemplate&quot;&gt;
            &lt;</span><span style="color: #a31515">Grid</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">Grid.ColumnDefinitions</span><span style="color: blue">&gt;
                    &lt;</span><span style="color: #a31515">ColumnDefinition </span><span style="color: red">Width</span><span style="color: blue">=&quot;Auto&quot;/&gt;
                    &lt;</span><span style="color: #a31515">ColumnDefinition </span><span style="color: red">Width</span><span style="color: blue">=&quot;*&quot;/&gt;
                &lt;/</span><span style="color: #a31515">Grid.ColumnDefinitions</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">i</span><span style="color: blue">:</span><span style="color: #a31515">Interaction.Behaviors</span><span style="color: blue">&gt;
                    &lt;</span><span style="color: #a31515">ei</span><span style="color: blue">:</span><span style="color: #a31515">DataStateBehavior </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">IsSelected</span><span style="color: blue">, </span><span style="color: red">Mode</span><span style="color: blue">=TwoWay}&quot; </span><span style="color: red">Value</span><span style="color: blue">=&quot;True&quot; </span><span style="color: red">TrueState</span><span style="color: blue">=&quot;Selected&quot; </span><span style="color: red">FalseState</span><span style="color: blue">=&quot;Unselected&quot;/&gt;
                &lt;/</span><span style="color: #a31515">i</span><span style="color: blue">:</span><span style="color: #a31515">Interaction.Behaviors</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">VisualStateManager.VisualStateGroups</span><span style="color: blue">&gt;
                    &lt;</span><span style="color: #a31515">VisualStateGroup </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Selection&quot;&gt;
                        &lt;</span><span style="color: #a31515">VisualStateGroup.Transitions</span><span style="color: blue">&gt;
                            &lt;</span><span style="color: #a31515">VisualTransition </span><span style="color: red">GeneratedDuration</span><span style="color: blue">=&quot;0:0:0.25&quot;/&gt;
                        &lt;/</span><span style="color: #a31515">VisualStateGroup.Transitions</span><span style="color: blue">&gt;
                        &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Selected&quot;&gt;
                            &lt;</span><span style="color: #a31515">Storyboard</span><span style="color: blue">&gt;
                                &lt;</span><span style="color: #a31515">DoubleAnimation </span><span style="color: red">Duration</span><span style="color: blue">=&quot;0&quot; </span><span style="color: red">To</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">Storyboard.TargetProperty</span><span style="color: blue">=&quot;(UIElement.Opacity)&quot; </span><span style="color: red">Storyboard.TargetName</span><span style="color: blue">=&quot;fillColor&quot; </span><span style="color: red">d</span><span style="color: blue">:</span><span style="color: red">IsOptimized</span><span style="color: blue">=&quot;True&quot;/&gt;
                                &lt;</span><span style="color: #a31515">DoubleAnimation </span><span style="color: red">Duration</span><span style="color: blue">=&quot;0&quot; </span><span style="color: red">To</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">Storyboard.TargetProperty</span><span style="color: blue">=&quot;(UIElement.Opacity)&quot; </span><span style="color: red">Storyboard.TargetName</span><span style="color: blue">=&quot;fillColor2&quot; </span><span style="color: red">d</span><span style="color: blue">:</span><span style="color: red">IsOptimized</span><span style="color: blue">=&quot;True&quot;/&gt;
                            &lt;/</span><span style="color: #a31515">Storyboard</span><span style="color: blue">&gt;
                        &lt;/</span><span style="color: #a31515">VisualState</span><span style="color: blue">&gt;
                        &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Unselected&quot;/&gt;
                    &lt;/</span><span style="color: #a31515">VisualStateGroup</span><span style="color: blue">&gt;
                &lt;/</span><span style="color: #a31515">VisualStateManager.VisualStateGroups</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">VisualStateManager.CustomVisualStateManager</span><span style="color: blue">&gt;
                    &lt;</span><span style="color: #a31515">ei</span><span style="color: blue">:</span><span style="color: #a31515">ExtendedVisualStateManager</span><span style="color: blue">/&gt;
                &lt;/</span><span style="color: #a31515">VisualStateManager.CustomVisualStateManager</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">Rectangle </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;fillColor&quot; </span><span style="color: red">Fill</span><span style="color: blue">=&quot;#FFBADDE9&quot; </span><span style="color: red">IsHitTestVisible</span><span style="color: blue">=&quot;False&quot; </span><span style="color: red">Opacity</span><span style="color: blue">=&quot;0&quot; </span><span style="color: red">RadiusY</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">RadiusX</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">Grid.ColumnSpan</span><span style="color: blue">=&quot;2&quot;/&gt;
                &lt;</span><span style="color: #a31515">Rectangle </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;fillColor2&quot; </span><span style="color: red">Fill</span><span style="color: blue">=&quot;#FFBADDE9&quot; </span><span style="color: red">IsHitTestVisible</span><span style="color: blue">=&quot;False&quot; </span><span style="color: red">Opacity</span><span style="color: blue">=&quot;0&quot; </span><span style="color: red">RadiusY</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">RadiusX</span><span style="color: blue">=&quot;1&quot; </span><span style="color: red">Grid.ColumnSpan</span><span style="color: blue">=&quot;2&quot;/&gt;
                &lt;</span><span style="color: #a31515">CheckBox </span><span style="color: red">IsChecked</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">IsSelected</span><span style="color: blue">, </span><span style="color: red">Mode</span><span style="color: blue">=TwoWay}&quot; </span><span style="color: red">Grid.ColumnSpan</span><span style="color: blue">=&quot;1&quot;/&gt;
                &lt;</span><span style="color: #a31515">TextBlock </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;textBlock&quot; </span><span style="color: red">Text</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">Name</span><span style="color: blue">}&quot; </span><span style="color: red">Grid.Column</span><span style="color: blue">=&quot;1&quot;/&gt;
            &lt;/</span><span style="color: #a31515">Grid</span><span style="color: blue">&gt;
        &lt;/</span><span style="color: #a31515">DataTemplate</span><span style="color: blue">&gt;
    &lt;/</span><span style="color: #a31515">UserControl.Resources</span><span style="color: blue">&gt;
    &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; </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">PeopleListDataSource</span><span style="color: blue">}}&quot; &gt;
        &lt;</span><span style="color: #a31515">ListBox </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;myList&quot; </span><span style="color: red">ItemsSource</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding</span><span style="color: blue">}&quot;
            </span><span style="color: red">ItemContainerStyle</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">StaticResource </span><span style="color: red">ListBoxItemStyle1</span><span style="color: blue">}&quot;
            </span><span style="color: red">ItemTemplate</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">StaticResource </span><span style="color: red">PersonTemplate</span><span style="color: blue">}&quot;
            </span><span style="color: red">SelectionMode</span><span style="color: blue">=&quot;Multiple&quot; /&gt;
    &lt;/</span><span style="color: #a31515">Grid</span><span style="color: blue">&gt;
&lt;/</span><span style="color: #a31515">UserControl</span><span style="color: blue">&gt;

</span></pre>
<p>The real magic is using the DataStateBehavior (which is included in the Blend 4.0 SDK):</p>
<pre class="code"><span style="color: blue">&lt;</span><span style="color: #a31515">i</span><span style="color: blue">:</span><span style="color: #a31515">Interaction.Behaviors</span><span style="color: blue">&gt;
    &lt;</span><span style="color: #a31515">ei</span><span style="color: blue">:</span><span style="color: #a31515">DataStateBehavior </span><span style="color: red">Binding</span><span style="color: blue">=&quot;{</span><span style="color: #a31515">Binding </span><span style="color: red">IsSelected</span><span style="color: blue">, </span><span style="color: red">Mode</span><span style="color: blue">=TwoWay}&quot; </span><span style="color: red">Value</span><span style="color: blue">=&quot;True&quot; </span><span style="color: red">TrueState</span><span style="color: blue">=&quot;Selected&quot; </span><span style="color: red">FalseState</span><span style="color: blue">=&quot;Unselected&quot;/&gt;
&lt;/</span><span style="color: #a31515">i</span><span style="color: blue">:</span><span style="color: #a31515">Interaction.Behaviors</span><span style="color: blue">&gt;

</span></pre>
<p>This ties the IsSelected property of the Person class (see below) to two VisualStates that I defined in the DataTemplate. A “Selected” and an “Unselected” state.</p>
<p>I grabbed the rectangle from the standard ListBoxItem container template template. </p>
<p>In the code behind, I wired up the selection changed event:</p>
<pre class="code"><span style="color: blue">public partial class </span><span style="color: #2b91af">MainPage </span>: <span style="color: #2b91af">UserControl
</span>{
    <span style="color: blue">private </span><span style="color: #2b91af">PeopleList </span>_items = <span style="color: blue">new </span><span style="color: #2b91af">PeopleList</span>();

    <span style="color: blue">public </span>MainPage()
    {
        <span style="color: blue">this</span>.DataContext = _items;
        InitializeComponent();
        myList.SelectionChanged += <span style="color: blue">new </span><span style="color: #2b91af">SelectionChangedEventHandler</span>(myList_SelectionChanged);
    }

    <span style="color: blue">void </span>myList_SelectionChanged(<span style="color: blue">object </span>sender, <span style="color: #2b91af">SelectionChangedEventArgs </span>e)
    {
        <span style="color: green">// these both just need to toggle
        </span><span style="color: blue">foreach </span>(<span style="color: blue">object </span>o <span style="color: blue">in </span>e.AddedItems)
        {
            <span style="color: #2b91af">Person </span>p = o <span style="color: blue">as </span><span style="color: #2b91af">Person</span>;
            p.IsSelected = !p.IsSelected;
        }
        <span style="color: blue">foreach </span>(<span style="color: blue">object </span>o <span style="color: blue">in </span>e.RemovedItems)
        {
            <span style="color: #2b91af">Person </span>p = o <span style="color: blue">as </span><span style="color: #2b91af">Person</span>;
            p.IsSelected = !p.IsSelected;
        }
    }

    <span style="color: blue">void </span>myList_KeyUp(<span style="color: blue">object </span>sender, <span style="color: #2b91af">KeyEventArgs </span>e)
    {
        <span style="color: blue">if </span>(e.Key == <span style="color: #2b91af">Key</span>.Space  )
        {
            <span style="color: blue">if </span>(e.OriginalSource <span style="color: blue">is </span><span style="color: #2b91af">ListBoxItem</span>)
            {
                <span style="color: #2b91af">Person </span>p = (e.OriginalSource <span style="color: blue">as </span><span style="color: #2b91af">ListBoxItem</span>).DataContext <span style="color: blue">as </span><span style="color: #2b91af">Person</span>;
                <span style="color: blue">if </span>(p != <span style="color: blue">null</span>)
                {
                    p.IsSelected = !p.IsSelected;
                }
            }
        }
    }
}</pre>
<p>The selection changed toggles the state of each item. Without doing that, the selection doesn’t behave correctly. The SelectedItems list on the listbox no longer reflects the reality of the bound data items – but that shouldn’t matter in this case as the property of the item reflects the real state accurately.</p>
<p>For testing:</p>
<pre class="code"><span style="color: blue">public class </span><span style="color: #2b91af">PeopleList </span>: <span style="color: #2b91af">ObservableCollection</span>&lt;<span style="color: #2b91af">Person</span>&gt;
{
    <span style="color: blue">public </span>PeopleList()
    {
      <span style="color: blue">this</span>.Add( <span style="color: blue">new </span><span style="color: #2b91af">Person </span>{ Name = <span style="color: #a31515">&quot;Henry&quot;</span>, IsSelected = <span style="color: blue">true </span>});
      <span style="color: blue">this</span>.Add(<span style="color: blue">new </span><span style="color: #2b91af">Person </span>{ Name = <span style="color: #a31515">&quot;Bonnie&quot;</span>, IsSelected = <span style="color: blue">true </span>});
      <span style="color: blue">this</span>.Add( <span style="color: blue">new </span><span style="color: #2b91af">Person </span>{ Name = <span style="color: #a31515">&quot;Clyde&quot;</span>, IsSelected = <span style="color: blue">false </span>});
      <span style="color: blue">this</span>.Add( <span style="color: blue">new </span><span style="color: #2b91af">Person </span>{ Name = <span style="color: #a31515">&quot;Ervin&quot;</span>, IsSelected = <span style="color: blue">false </span>});
      <span style="color: blue">this</span>.Add( <span style="color: blue">new </span><span style="color: #2b91af">Person </span>{ Name = <span style="color: #a31515">&quot;Timmy&quot;</span>, IsSelected = <span style="color: blue">true </span>});
      <span style="color: blue">this</span>.Add( <span style="color: blue">new </span><span style="color: #2b91af">Person </span>{ Name = <span style="color: #a31515">&quot;Jane&quot;</span>, IsSelected = <span style="color: blue">true </span>});

    }
}</pre>
<p> And:</p>
<pre class="code"><span style="color: blue">public class </span><span style="color: #2b91af">Person </span>: <span style="color: #2b91af">INotifyPropertyChanged
</span>{
    <span style="color: blue">private bool </span>_isSelected;
    <span style="color: blue">private string </span>_name;

    <span style="color: blue">public string </span>Name
    {
        <span style="color: blue">get </span>{ <span style="color: blue">return </span>_name; }
        <span style="color: blue">set
        </span>{
            <span style="color: blue">if </span>(<span style="color: blue">value </span>!= _name)
            {
                _name = <span style="color: blue">value</span>;
                RaisePropertyChanged(<span style="color: #a31515">&quot;Name&quot;</span>);
            }
        }
    }

    <span style="color: blue">public bool </span>IsSelected
    {
        <span style="color: blue">get </span>{ <span style="color: blue">return </span>_isSelected; }
        <span style="color: blue">set
        </span>{
            <span style="color: blue">if </span>(_isSelected != <span style="color: blue">value</span>)
            {
                _isSelected = <span style="color: blue">value</span>;
                RaisePropertyChanged(<span style="color: #a31515">&quot;IsSelected&quot;</span>);
            }
        }
    }

    <span style="color: blue">private void </span>RaisePropertyChanged(<span style="color: blue">string </span>propertyName)
    {
        <span style="color: blue">if </span>(PropertyChanged != <span style="color: blue">null</span>)
        {
            PropertyChanged(<span style="color: blue">this</span>, <span style="color: blue">new </span><span style="color: #2b91af">PropertyChangedEventArgs</span>(propertyName));
        }

    }

    <span style="color: blue">public event </span><span style="color: #2b91af">PropertyChangedEventHandler </span>PropertyChanged;
}</pre>

<p><a href="http://feedads.g.doubleclick.net/~a/dfHkI3zW6EnJC1YuR6CzOB5kC84/0/da"><img src="http://feedads.g.doubleclick.net/~a/dfHkI3zW6EnJC1YuR6CzOB5kC84/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/dfHkI3zW6EnJC1YuR6CzOB5kC84/1/da"><img src="http://feedads.g.doubleclick.net/~a/dfHkI3zW6EnJC1YuR6CzOB5kC84/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=x4-IBavATio:l5PUP5FG8OY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=x4-IBavATio:l5PUP5FG8OY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=x4-IBavATio:l5PUP5FG8OY:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=x4-IBavATio:l5PUP5FG8OY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=x4-IBavATio:l5PUP5FG8OY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=x4-IBavATio:l5PUP5FG8OY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=x4-IBavATio:l5PUP5FG8OY:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=x4-IBavATio:l5PUP5FG8OY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=x4-IBavATio:l5PUP5FG8OY:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=x4-IBavATio:l5PUP5FG8OY:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/x4-IBavATio" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1113/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1113</feedburner:origLink></item>
		<item>
		<title>Using Visual State Manager from a UserControl</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/wgBLfqsfuz8/1111</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1111#comments</comments>
		<pubDate>Mon, 26 Jul 2010 12:50:53 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Coding]]></category>
		<category><![CDATA[Silverlight]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1111</guid>
		<description><![CDATA[To aid in an answer on StackOverflow that I had recently answered, I’m providing part of the response here. The question was essentially, “what’s a way to use DataTriggers in Silverlight, without DataTriggers?” I had suggested one idea would just to use VisualStates and a code behind file. That’s what I’ve done here. I created [...]]]></description>
			<content:encoded><![CDATA[<p>To aid in an answer on <a href="http://stackoverflow.com/questions/3330010/changing-a-style-of-silverlight-custom-control-when-another-property-changes/3331013#3331013">StackOverflow</a> that I had recently answered, I’m providing part of the response here.</p>
<p>The question was essentially, “what’s a way to use DataTriggers in Silverlight, without DataTriggers?”</p>
<p>I had suggested one idea would just to use VisualStates and a code behind file.</p>
<p>That’s what I’ve done here. I created an enum of type AnimateState, which has three possible values, Top, Left, and Right. By clicking on one of three buttons on the simple UI, it changes the value of the property, which in turn calls one of the VisualStates defined in the XAML.</p>
<p>In the example, it animates the position of the orange ellipse to various positions on the canvas. </p>
<pre class="code"><span style="color: blue">using </span>System;
<span style="color: blue">using </span>System.Collections.Generic;
<span style="color: blue">using </span>System.Linq;
<span style="color: blue">using </span>System.Net;
<span style="color: blue">using </span>System.Windows;
<span style="color: blue">using </span>System.Windows.Controls;
<span style="color: blue">using </span>System.Windows.Documents;
<span style="color: blue">using </span>System.Windows.Input;
<span style="color: blue">using </span>System.Windows.Media;
<span style="color: blue">using </span>System.Windows.Media.Animation;
<span style="color: blue">using </span>System.Windows.Shapes;

<span style="color: blue">namespace </span>DemoShowVisualStateManager
{
    <span style="color: blue">public partial class </span><span style="color: #2b91af">MainPage </span>: <span style="color: #2b91af">UserControl
    </span>{
        <span style="color: blue">private </span><span style="color: #2b91af">AnimateState </span>_animateState;

        <span style="color: blue">public </span>MainPage()
        {
            InitializeComponent();
        }

        <span style="color: blue">public </span><span style="color: #2b91af">AnimateState </span>State
        {
            <span style="color: blue">get </span>{ <span style="color: blue">return </span>_animateState; }

            <span style="color: blue">set
            </span>{
                <span style="color: blue">if </span>(_animateState != <span style="color: blue">value </span>&amp;&amp; <span style="color: #2b91af">Enum</span>.IsDefined(<span style="color: blue">typeof</span>(<span style="color: #2b91af">AnimateState</span>), <span style="color: blue">value</span>))
                {
                    _animateState = <span style="color: blue">value</span>;

                    <span style="color: #2b91af">VisualStateManager</span>.GoToState(<span style="color: blue">this</span>, <span style="color: blue">value</span>.ToString(), <span style="color: blue">true</span>);
                }
            }

        }

        <span style="color: blue">private void </span>Button_Click(<span style="color: blue">object </span>sender, System.Windows.<span style="color: #2b91af">RoutedEventArgs </span>e)
        {
            <span style="color: #2b91af">AnimateState </span>state;
            <span style="color: blue">if </span>(<span style="color: #2b91af">AnimateState</span>.TryParse((sender <span style="color: blue">as </span><span style="color: #2b91af">Button</span>).Content.ToString(), <span style="color: blue">out </span>state))
            {
                State = state;
            }

        }
    }

    <span style="color: blue">public enum </span><span style="color: #2b91af">AnimateState
    </span>{
        Top,
        Left,
        Right
    }
}</pre>
<p>&#160;</p>
<pre class="code"><span style="color: blue">&lt;</span><span style="color: #a31515">UserControl </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Class</span><span style="color: blue">=&quot;DemoShowVisualStateManager.MainPage&quot;
    </span><span style="color: red">xmlns</span><span style="color: blue">=&quot;http://schemas.microsoft.com/winfx/2006/xaml/presentation&quot;
    </span><span style="color: red">xmlns</span><span style="color: blue">:</span><span style="color: red">x</span><span style="color: blue">=&quot;http://schemas.microsoft.com/winfx/2006/xaml&quot;
    </span><span style="color: red">xmlns</span><span style="color: blue">:</span><span style="color: red">d</span><span style="color: blue">=&quot;http://schemas.microsoft.com/expression/blend/2008&quot;
    </span><span style="color: red">xmlns</span><span style="color: blue">:</span><span style="color: red">mc</span><span style="color: blue">=&quot;http://schemas.openxmlformats.org/markup-compatibility/2006&quot;
    </span><span style="color: red">mc</span><span style="color: blue">:</span><span style="color: red">Ignorable</span><span style="color: blue">=&quot;d&quot;
    </span><span style="color: red">Width</span><span style="color: blue">=&quot;500&quot; </span><span style="color: red">Height</span><span style="color: blue">=&quot;500&quot;&gt;

    &lt;</span><span style="color: #a31515">UserControl.Resources</span><span style="color: blue">&gt;
    &lt;/</span><span style="color: #a31515">UserControl.Resources</span><span style="color: blue">&gt;
    &lt;</span><span style="color: #a31515">Canvas </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">VisualStateManager.VisualStateGroups</span><span style="color: blue">&gt;
            &lt;</span><span style="color: #a31515">VisualStateGroup </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Positions&quot;&gt;
                &lt;</span><span style="color: #a31515">VisualStateGroup.Transitions</span><span style="color: blue">&gt;
                    &lt;</span><span style="color: #a31515">VisualTransition </span><span style="color: red">GeneratedDuration</span><span style="color: blue">=&quot;0:0:3&quot;/&gt;
                &lt;/</span><span style="color: #a31515">VisualStateGroup.Transitions</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Right&quot;&gt;
                    &lt;</span><span style="color: #a31515">Storyboard</span><span style="color: blue">&gt;
                        &lt;</span><span style="color: #a31515">DoubleAnimation </span><span style="color: red">Duration</span><span style="color: blue">=&quot;0&quot; </span><span style="color: red">To</span><span style="color: blue">=&quot;389&quot; </span><span style="color: red">Storyboard.TargetProperty</span><span style="color: blue">=&quot;(UIElement.RenderTransform).(CompositeTransform.TranslateY)&quot; </span><span style="color: red">Storyboard.TargetName</span><span style="color: blue">=&quot;ball&quot; </span><span style="color: red">d</span><span style="color: blue">:</span><span style="color: red">IsOptimized</span><span style="color: blue">=&quot;True&quot;/&gt;
                        &lt;</span><span style="color: #a31515">DoubleAnimation </span><span style="color: red">Duration</span><span style="color: blue">=&quot;0&quot; </span><span style="color: red">To</span><span style="color: blue">=&quot;198&quot; </span><span style="color: red">Storyboard.TargetProperty</span><span style="color: blue">=&quot;(UIElement.RenderTransform).(CompositeTransform.TranslateX)&quot; </span><span style="color: red">Storyboard.TargetName</span><span style="color: blue">=&quot;ball&quot; </span><span style="color: red">d</span><span style="color: blue">:</span><span style="color: red">IsOptimized</span><span style="color: blue">=&quot;True&quot;/&gt;
                    &lt;/</span><span style="color: #a31515">Storyboard</span><span style="color: blue">&gt;
                &lt;/</span><span style="color: #a31515">VisualState</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Left&quot;&gt;
                    &lt;</span><span style="color: #a31515">Storyboard</span><span style="color: blue">&gt;
                        &lt;</span><span style="color: #a31515">DoubleAnimation </span><span style="color: red">Duration</span><span style="color: blue">=&quot;0&quot; </span><span style="color: red">To</span><span style="color: blue">=&quot;-199&quot; </span><span style="color: red">Storyboard.TargetProperty</span><span style="color: blue">=&quot;(UIElement.RenderTransform).(CompositeTransform.TranslateX)&quot; </span><span style="color: red">Storyboard.TargetName</span><span style="color: blue">=&quot;ball&quot; </span><span style="color: red">d</span><span style="color: blue">:</span><span style="color: red">IsOptimized</span><span style="color: blue">=&quot;True&quot;/&gt;
                        &lt;</span><span style="color: #a31515">DoubleAnimation </span><span style="color: red">Duration</span><span style="color: blue">=&quot;0&quot; </span><span style="color: red">To</span><span style="color: blue">=&quot;390&quot; </span><span style="color: red">Storyboard.TargetProperty</span><span style="color: blue">=&quot;(UIElement.RenderTransform).(CompositeTransform.TranslateY)&quot; </span><span style="color: red">Storyboard.TargetName</span><span style="color: blue">=&quot;ball&quot; </span><span style="color: red">d</span><span style="color: blue">:</span><span style="color: red">IsOptimized</span><span style="color: blue">=&quot;True&quot;/&gt;
                    &lt;/</span><span style="color: #a31515">Storyboard</span><span style="color: blue">&gt;
                &lt;/</span><span style="color: #a31515">VisualState</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">VisualState </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;Top&quot;/&gt;
            &lt;/</span><span style="color: #a31515">VisualStateGroup</span><span style="color: blue">&gt;
        &lt;/</span><span style="color: #a31515">VisualStateManager.VisualStateGroups</span><span style="color: blue">&gt;

        &lt;</span><span style="color: #a31515">Ellipse </span><span style="color: red">x</span><span style="color: blue">:</span><span style="color: red">Name</span><span style="color: blue">=&quot;ball&quot; </span><span style="color: red">Stroke</span><span style="color: blue">=&quot;#FFFFD9B8&quot; </span><span style="color: red">RenderTransformOrigin</span><span style="color: blue">=&quot;0.5,0.5&quot; </span><span style="color: red">Height</span><span style="color: blue">=&quot;100&quot; </span><span style="color: red">VerticalAlignment</span><span style="color: blue">=&quot;Top&quot; </span><span style="color: red">Canvas.Top</span><span style="color: blue">=&quot;10&quot; </span><span style="color: red">Width</span><span style="color: blue">=&quot;100&quot; </span><span style="color: red">Canvas.Left</span><span style="color: blue">=&quot;200&quot;&gt;
            &lt;</span><span style="color: #a31515">Ellipse.RenderTransform</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">CompositeTransform</span><span style="color: blue">/&gt;
            &lt;/</span><span style="color: #a31515">Ellipse.RenderTransform</span><span style="color: blue">&gt;
            &lt;</span><span style="color: #a31515">Ellipse.Fill</span><span style="color: blue">&gt;
                &lt;</span><span style="color: #a31515">RadialGradientBrush </span><span style="color: red">Center</span><span style="color: blue">=&quot;0.388,0.328&quot; </span><span style="color: red">GradientOrigin</span><span style="color: blue">=&quot;0.388,0.328&quot; </span><span style="color: red">RadiusX</span><span style="color: blue">=&quot;0.63&quot;&gt;
                    &lt;</span><span style="color: #a31515">GradientStop </span><span style="color: red">Color</span><span style="color: blue">=&quot;#FFF97200&quot; </span><span style="color: red">Offset</span><span style="color: blue">=&quot;1&quot;/&gt;
                    &lt;</span><span style="color: #a31515">GradientStop </span><span style="color: red">Color</span><span style="color: blue">=&quot;#FFFFD9B8&quot;/&gt;
                &lt;/</span><span style="color: #a31515">RadialGradientBrush</span><span style="color: blue">&gt;
            &lt;/</span><span style="color: #a31515">Ellipse.Fill</span><span style="color: blue">&gt;
        &lt;/</span><span style="color: #a31515">Ellipse</span><span style="color: blue">&gt;
        &lt;</span><span style="color: #a31515">Button </span><span style="color: red">Content</span><span style="color: blue">=&quot;Left&quot; </span><span style="color: red">Height</span><span style="color: blue">=&quot;33&quot; </span><span style="color: red">Canvas.Left</span><span style="color: blue">=&quot;200&quot; </span><span style="color: red">Canvas.Top</span><span style="color: blue">=&quot;229&quot; </span><span style="color: red">Width</span><span style="color: blue">=&quot;100&quot; </span><span style="color: red">Click</span><span style="color: blue">=&quot;Button_Click&quot;/&gt;
        &lt;</span><span style="color: #a31515">Button </span><span style="color: red">Content</span><span style="color: blue">=&quot;Top&quot; </span><span style="color: red">Height</span><span style="color: blue">=&quot;33&quot; </span><span style="color: red">Canvas.Left</span><span style="color: blue">=&quot;200&quot; </span><span style="color: red">Canvas.Top</span><span style="color: blue">=&quot;266&quot; </span><span style="color: red">Width</span><span style="color: blue">=&quot;100&quot; </span><span style="color: red">Click</span><span style="color: blue">=&quot;Button_Click&quot;/&gt;
        &lt;</span><span style="color: #a31515">Button </span><span style="color: red">Content</span><span style="color: blue">=&quot;Right&quot; </span><span style="color: red">Height</span><span style="color: blue">=&quot;33&quot; </span><span style="color: red">Canvas.Left</span><span style="color: blue">=&quot;200&quot; </span><span style="color: red">Canvas.Top</span><span style="color: blue">=&quot;303&quot; </span><span style="color: red">Width</span><span style="color: blue">=&quot;100&quot; </span><span style="color: red">Click</span><span style="color: blue">=&quot;Button_Click&quot;/&gt;

    &lt;/</span><span style="color: #a31515">Canvas</span><span style="color: blue">&gt;
&lt;/</span><span style="color: #a31515">UserControl</span><span style="color: blue">&gt;

</span></pre>
<p><img style="border-bottom: 0px; border-left: 0px; margin: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/07/image1.png" width="213" height="214" /></p>

<p><a href="http://feedads.g.doubleclick.net/~a/0TIoADm2gxX9WpVZbWMGYsILhag/0/da"><img src="http://feedads.g.doubleclick.net/~a/0TIoADm2gxX9WpVZbWMGYsILhag/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/0TIoADm2gxX9WpVZbWMGYsILhag/1/da"><img src="http://feedads.g.doubleclick.net/~a/0TIoADm2gxX9WpVZbWMGYsILhag/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=wgBLfqsfuz8:QR35jP2hHfw:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=wgBLfqsfuz8:QR35jP2hHfw:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=wgBLfqsfuz8:QR35jP2hHfw:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=wgBLfqsfuz8:QR35jP2hHfw:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=wgBLfqsfuz8:QR35jP2hHfw:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=wgBLfqsfuz8:QR35jP2hHfw:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=wgBLfqsfuz8:QR35jP2hHfw:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=wgBLfqsfuz8:QR35jP2hHfw:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=wgBLfqsfuz8:QR35jP2hHfw:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=wgBLfqsfuz8:QR35jP2hHfw:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/wgBLfqsfuz8" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1111/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1111</feedburner:origLink></item>
		<item>
		<title>Visual Studio 2010 Add-in Settings Swapper</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/LXzTwjTOb9o/1109</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1109#comments</comments>
		<pubDate>Sun, 04 Jul 2010 14:38:45 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Coding]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1109</guid>
		<description><![CDATA[Challenged by a coworker recently, I created a simple add-in for Visual Studio 2010 to modify the settings for code formatting based on the file extension. The usage scenario is simple: allow for different language formatting rules based on the file file type (or extension). In this case, he wanted to have a different standard [...]]]></description>
			<content:encoded><![CDATA[<p>Challenged by a coworker recently, I created a simple add-in for Visual Studio 2010 to modify the settings for code formatting based on the file extension. The usage scenario is simple: allow for different language formatting rules based on the file file type (or extension). In this case, he wanted to have a different standard for curly brace usage in MVC ASPX pages overriding the default. </p>
<p>The addin, called <a href="http://settingsswapper.codeplex.com/" target="_blank">Settings Swapper</a> may be downloaded from CodePlex and is licensed using the <a href="http://settingsswapper.codeplex.com/license" target="_blank">new BSD license</a>.</p>
<p>The documentation is <a href="http://settingsswapper.codeplex.com/documentation" target="_blank">here</a>.</p>
<p>The settings he used for MVC pages are included in the documentation. If you have any questions or issues, either leave a comment here or add something to codeplex. </p>
<p>Enjoy.</p>

<p><a href="http://feedads.g.doubleclick.net/~a/K7AHKw4P8TdmPyX2qKo6OqMun9g/0/da"><img src="http://feedads.g.doubleclick.net/~a/K7AHKw4P8TdmPyX2qKo6OqMun9g/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/K7AHKw4P8TdmPyX2qKo6OqMun9g/1/da"><img src="http://feedads.g.doubleclick.net/~a/K7AHKw4P8TdmPyX2qKo6OqMun9g/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=LXzTwjTOb9o:eONrWYacKJM:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=LXzTwjTOb9o:eONrWYacKJM:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=LXzTwjTOb9o:eONrWYacKJM:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=LXzTwjTOb9o:eONrWYacKJM:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=LXzTwjTOb9o:eONrWYacKJM:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=LXzTwjTOb9o:eONrWYacKJM:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=LXzTwjTOb9o:eONrWYacKJM:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=LXzTwjTOb9o:eONrWYacKJM:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=LXzTwjTOb9o:eONrWYacKJM:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=LXzTwjTOb9o:eONrWYacKJM:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/LXzTwjTOb9o" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1109/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1109</feedburner:origLink></item>
		<item>
		<title>Silverlight installer doesn’t like Adobe Updater</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/nyDSHFGUbzk/1108</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1108#comments</comments>
		<pubDate>Fri, 02 Jul 2010 00:07:36 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Humor]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1108</guid>
		<description><![CDATA[I found this experience quite amusing today…]]></description>
			<content:encoded><![CDATA[<p>I found this experience quite amusing today…</p>
<p><img style="border-bottom: 0px; border-left: 0px; margin: 0px; display: inline; border-top: 0px; border-right: 0px" class="wlDisabledImage" title="image" border="0" alt="image" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/07/image.png" width="450" height="213" /></p>

<p><a href="http://feedads.g.doubleclick.net/~a/tIHxoG-5oF23jASJpjsj45iA9_Y/0/da"><img src="http://feedads.g.doubleclick.net/~a/tIHxoG-5oF23jASJpjsj45iA9_Y/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/tIHxoG-5oF23jASJpjsj45iA9_Y/1/da"><img src="http://feedads.g.doubleclick.net/~a/tIHxoG-5oF23jASJpjsj45iA9_Y/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=nyDSHFGUbzk:znHYJSDOYm4:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=nyDSHFGUbzk:znHYJSDOYm4:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=nyDSHFGUbzk:znHYJSDOYm4:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=nyDSHFGUbzk:znHYJSDOYm4:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=nyDSHFGUbzk:znHYJSDOYm4:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=nyDSHFGUbzk:znHYJSDOYm4:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=nyDSHFGUbzk:znHYJSDOYm4:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=nyDSHFGUbzk:znHYJSDOYm4:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=nyDSHFGUbzk:znHYJSDOYm4:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=nyDSHFGUbzk:znHYJSDOYm4:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/nyDSHFGUbzk" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1108/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1108</feedburner:origLink></item>
		<item>
		<title>Now, a 3rd option, IIS Express</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/Vr5gvNYeocw/1106</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1106#comments</comments>
		<pubDate>Tue, 29 Jun 2010 11:09:31 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[General]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1106</guid>
		<description><![CDATA[ScottGu announced IIS Express. IIS Express will become a new way for developers to do local web development in a safe, administrative-account-free way, yet get the full experience of IIS 7. I’d bet the days of the ASP.NET Development server are numbered if IIS Express actually works as well as is suggested (if the same [...]]]></description>
			<content:encoded><![CDATA[<p>ScottGu announced <a href="http://weblogs.asp.net/scottgu/archive/2010/06/28/introducing-iis-express.aspx" target="_blank">IIS Express</a>. </p>
<p>IIS Express will become a new way for developers to do local web development in a safe, administrative-account-free way, yet get the full experience of IIS 7. I’d bet the days of the ASP.NET Development server are numbered if IIS Express actually works as well as is suggested (if the same debug/test/run cycle is maintained, and the perf is good, I can’t see any reason why not). </p>
<p>The only bad news is that the announcement precedes the availability of IIS Express and also precedes the availability of patches for VS 2010 to make integration with this new option simple. The latter sounds like it’s farther out than IIS Express itself.</p>
<p>I’d like to see a feature for allowing the web sites hosted within IIS Express to be available from other machines and not just localhost. It would make sharing current development with other team members, QA, managers, etc., much simpler. For developers on older versions of Windows (like XP), they have no option for locally hosting a IIS7 web site and showing it to others. (From the initial blog post, it’s not mentioned if this scenario is supported). </p>

<p><a href="http://feedads.g.doubleclick.net/~a/Z-eD4cytk0Y3IfNJMhCG3qAzAmI/0/da"><img src="http://feedads.g.doubleclick.net/~a/Z-eD4cytk0Y3IfNJMhCG3qAzAmI/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/Z-eD4cytk0Y3IfNJMhCG3qAzAmI/1/da"><img src="http://feedads.g.doubleclick.net/~a/Z-eD4cytk0Y3IfNJMhCG3qAzAmI/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=Vr5gvNYeocw:oqDHMMk2RUY:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=Vr5gvNYeocw:oqDHMMk2RUY:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=Vr5gvNYeocw:oqDHMMk2RUY:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=Vr5gvNYeocw:oqDHMMk2RUY:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=Vr5gvNYeocw:oqDHMMk2RUY:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=Vr5gvNYeocw:oqDHMMk2RUY:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=Vr5gvNYeocw:oqDHMMk2RUY:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=Vr5gvNYeocw:oqDHMMk2RUY:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=Vr5gvNYeocw:oqDHMMk2RUY:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=Vr5gvNYeocw:oqDHMMk2RUY:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/Vr5gvNYeocw" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1106/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1106</feedburner:origLink></item>
		<item>
		<title>Visual Studio 2010 Crashes Repeatedly</title>
		<link>http://feedproxy.google.com/~r/wiredprairie/~3/QyGQDPuL0Pg/1105</link>
		<comments>http://www.wiredprairie.us/blog/index.php/archives/1105#comments</comments>
		<pubDate>Tue, 29 Jun 2010 00:58:53 +0000</pubDate>
		<dc:creator>Aaron</dc:creator>
				<category><![CDATA[Coding]]></category>

		<guid isPermaLink="false">http://www.wiredprairie.us/blog/index.php/archives/1105</guid>
		<description><![CDATA[If you have my kind of luck and Visual Studio 2010 crashes every time you open a specific project or solution, try deleting the .suo file associated with the solution (the Visual Studio Solution User Options). It’s located in the same folder as the solution (.sln) file, and often is hidden. It usually works for [...]]]></description>
			<content:encoded><![CDATA[<p>If you have my kind of luck and Visual Studio 2010 crashes every time you open a specific project or solution, try deleting the .suo file associated with the solution (the Visual Studio Solution User Options). It’s located in the same folder as the solution (.sln) file, and often is hidden. </p>
<p>It usually works for me. </p>
<p>The stack dump from the mini-dump taken by Visual Studio isn’t real enlightening. Things went wrong. <img style="border-bottom-style: none; border-right-style: none; border-top-style: none; border-left-style: none" class="wlEmoticon wlEmoticon-smile" alt="Smile" src="http://www.wiredprairie.us/blog/wp-content/uploads/2010/06/wlEmoticonsmile.png" /></p>
<p>&#160;&#160;&#160;&#160; ntdll.dll!@RtlpLowFragHeapFree@8()&#160; + 0&#215;89 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!_RtlFreeHeap@12()&#160; + 0x7e bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; apphelp.dll!_SdbFree@4()&#160; + 0&#215;22 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; apphelp.dll!_HashFree@4()&#160; + 0x3c bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; apphelp.dll!_SdbpReleaseSearchDBContext@4()&#160; + 0x6d bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; apphelp.dll!_SdbGetMatchingExeEx@32()&#160; + 0x2b9 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; apphelp.dll!_InternalCheckRunApp@76()&#160; + 0x21c bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; apphelp.dll!_ApphelpCheckRunAppEx@56()&#160; + 0xa7 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; kernel32.dll!_BaseRestoreImpersonation@4()&#160; &#8211; 0x75d55 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; kernel32.dll!_BaseCheckRunApp@52()&#160; + 0&#215;46 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; kernel32.dll!_BasepCheckBadapp@60()&#160; + 0x1a1 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; kernel32.dll!_BasepQueryAppCompat@68()&#160; + 0&#215;63 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; kernel32.dll!_CreateProcessInternalW@48()&#160; + 0&#215;961 bytes&#160;&#160;&#160; <br />&gt;&#160;&#160;&#160; kernel32.dll!_CreateProcessInternalA@48()&#160; + 0&#215;123 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; kernel32.dll!_CreateProcessA@40()&#160; + 0x2c bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; devenv.exe!DwCreateProcess()&#160; + 0xc0 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; devenv.exe!LaunchWatson()&#160; + 0x2b2 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; devenv.exe!DwExceptionFilterEx()&#160; + 0xed bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; devenv.exe!DwExceptionFilter()&#160; + 0x1f bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; mscoreei.dll!InternalUnhandledExceptionFilter()&#160; + 0x1c bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; kernel32.dll!_UnhandledExceptionFilter@4()&#160; + 0x5e2 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!___RtlUserThreadStart@8()&#160; + 0x369cc bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!@_EH4_CallFilterFunc@8()&#160; + 0&#215;12 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!ExecuteHandler2@20()&#160; + 0&#215;26 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!ExecuteHandler@20()&#160; + 0&#215;24 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!_KiUserExceptionDispatcher@8()&#160; + 0xf bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!@RtlpLowFragHeapFree@8()&#160; + 0&#215;89 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!_RtlFreeHeap@12()&#160; + 0x7e bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ole32.dll!CRetailMalloc_Free()&#160; + 0x1c bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ole32.dll!_CoTaskMemFree@4()&#160; + 0&#215;13 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; Microsoft.VisualStudio.Editor.Implementation.ni.dll!0daff77b()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; [Frames below may be incorrect and/or missing, no symbols loaded for Microsoft.VisualStudio.Editor.Implementation.ni.dll]&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; Microsoft.VisualStudio.Editor.Implementation.ni.dll!0daff77b()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; Microsoft.VisualStudio.Editor.Implementation.ni.dll!0dafdfcd()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; Microsoft.VisualStudio.Editor.Implementation.ni.dll!0daff642()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; Microsoft.VisualStudio.Editor.Implementation.ni.dll!0dafdfcd()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; cslangsvc.dll!CEditFilter::QueryStatus()&#160; + 0x13c bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; cslangsvc.dll!CVsEditFilter::QueryStatus()&#160; + 0&#215;95 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; mscorlib.ni.dll!5af61753()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; Microsoft.VisualStudio.Editor.Implementation.ni.dll!0dae99eb()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; Microsoft.VisualStudio.Editor.Implementation.ni.dll!0dae9a1c()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; Microsoft.VisualStudio.Platform.WindowManagement.ni.dll!6dce2ae4()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; Microsoft.VisualStudio.Platform.WindowManagement.ni.dll!6dcdf98c()&#160;&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CVSCommandTarget::QueryStatusCmd()&#160; + 0x423c bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!`anonymous namespace&#8217;::QueryStatusForController()&#160; + 0&#215;63 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!`anonymous namespace&#8217;::GetQueryStatusFlags()&#160; + 0x3a bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CSurfaceCommandingSupport::IsCommandEnabled()&#160; + 0x1bbb bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!`anonymous namespace&#8217;::DoCommonStateUpdating&lt;CommandUI::Models::IButtonController,`anonymous namespace&#8217;::&lt;lambda1&gt; &gt;()&#160; + 0xa2 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CUpdateVisitor::VisitButtonController()&#160; + 0x1b bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CControllerVisitorBase::DispatchVisit()&#160; + 0x3bf bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CControllerVisitorBase::VisitController()&#160; + 0&#215;22 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CSurfaceCommandingSupport::Update()&#160; + 0x2e bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CommandUI::Models::Impl::CControllerBase::Update()&#160; + 0&#215;21 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!UpdateChildCollectionWithSeparators()&#160; + 0x17f bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CUpdateVisitor::VisitToolBarController()&#160; + 0x2a6 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CControllerVisitorBase::DispatchVisit()&#160; + 0&#215;226 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CControllerVisitorBase::VisitController()&#160; + 0&#215;22 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CSurfaceCommandingSupport::Update()&#160; + 0x2e bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!UpdateCommandModels()&#160; + 0&#215;147 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CmdUpdateForceInternal()&#160; + 0&#215;28 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CMsoComponent::FDoNonPeriodicIdle()&#160; + 0&#215;991 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CMsoComponent::FDoIdle()&#160; + 0&#215;17 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!SCM::FDoIdleLoop()&#160; + 0xf3 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!SCM::FDoIdle()&#160; + 0xc7 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!SCM_MsoStdCompMgr::FDoIdle()&#160; + 0&#215;13 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CMsoCMHandler::EnvironmentMsgLoop()&#160; + 0x74a bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CMsoCMHandler::FPushMessageLoop()&#160; + 0&#215;79 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!SCM::FPushMessageLoop()&#160; + 0x8c bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!SCM_MsoCompMgr::FPushMessageLoop()&#160; + 0x2a bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!CMsoComponent::PushMsgLoop()&#160; + 0&#215;28 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!VStudioMainLogged()&#160; + 0x22a bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; msenv.dll!_VStudioMain()&#160; + 0&#215;78 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; devenv.exe!util_CallVsMain()&#160; + 0xdb bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; devenv.exe!CDevEnvAppId::Run()&#160; + 0&#215;693 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; devenv.exe!_WinMain@16()&#160; + 0&#215;88 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; devenv.exe!operator new[]()&#160; + 0xa59d bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; kernel32.dll!@BaseThreadInitThunk@12()&#160; + 0&#215;12 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!___RtlUserThreadStart@8()&#160; + 0&#215;27 bytes&#160;&#160;&#160; <br />&#160;&#160;&#160;&#160; ntdll.dll!__RtlUserThreadStart@8()&#160; + 0x1b bytes&#160;&#160;&#160; </p>

<p><a href="http://feedads.g.doubleclick.net/~a/S4PYtaB1Gn8U80c74kUFDb6pdUA/0/da"><img src="http://feedads.g.doubleclick.net/~a/S4PYtaB1Gn8U80c74kUFDb6pdUA/0/di" border="0" ismap="true"></img></a><br/>
<a href="http://feedads.g.doubleclick.net/~a/S4PYtaB1Gn8U80c74kUFDb6pdUA/1/da"><img src="http://feedads.g.doubleclick.net/~a/S4PYtaB1Gn8U80c74kUFDb6pdUA/1/di" border="0" ismap="true"></img></a></p><div class="feedflare">
<a href="http://feeds.feedburner.com/~ff/wiredprairie?a=QyGQDPuL0Pg:5twlFgDGHZg:yIl2AUoC8zA"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=yIl2AUoC8zA" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=QyGQDPuL0Pg:5twlFgDGHZg:V_sGLiPBpWU"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=QyGQDPuL0Pg:5twlFgDGHZg:V_sGLiPBpWU" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=QyGQDPuL0Pg:5twlFgDGHZg:gIN9vFwOqvQ"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=QyGQDPuL0Pg:5twlFgDGHZg:gIN9vFwOqvQ" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=QyGQDPuL0Pg:5twlFgDGHZg:F7zBnMyn0Lo"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=QyGQDPuL0Pg:5twlFgDGHZg:F7zBnMyn0Lo" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=QyGQDPuL0Pg:5twlFgDGHZg:qj6IDK7rITs"><img src="http://feeds.feedburner.com/~ff/wiredprairie?d=qj6IDK7rITs" border="0"></img></a> <a href="http://feeds.feedburner.com/~ff/wiredprairie?a=QyGQDPuL0Pg:5twlFgDGHZg:D7DqB2pKExk"><img src="http://feeds.feedburner.com/~ff/wiredprairie?i=QyGQDPuL0Pg:5twlFgDGHZg:D7DqB2pKExk" border="0"></img></a>
</div><img src="http://feeds.feedburner.com/~r/wiredprairie/~4/QyGQDPuL0Pg" height="1" width="1"/>]]></content:encoded>
			<wfw:commentRss>http://www.wiredprairie.us/blog/index.php/archives/1105/feed</wfw:commentRss>
		<slash:comments>0</slash:comments>
		<feedburner:origLink>http://www.wiredprairie.us/blog/index.php/archives/1105</feedburner:origLink></item>
	</channel>
</rss>
