<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/rss.xsl" media="screen"?><rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:wfw="http://wellformedweb.org/CommentAPI/"><channel><title>How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx</link><description>In winter/spring of this year I was asked to do some applications-development training for our internal teams in China and Japan as well as our external partners. In addition to my own experiences developing Surface apps, I talked with many team members</description><dc:language>en-US</dc:language><generator>CommunityServer 2.1 SP1 (Build: 61025.2)</generator><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6458150</link><pubDate>Wed, 21 Nov 2007 21:32:33 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6458150</guid><dc:creator>nesher</dc:creator><description>&lt;p&gt;&amp;quot;WPF is flexible enough to allow us to put Surface &amp;quot;contact&amp;quot; events into its event stream.&amp;quot;&lt;/p&gt;
&lt;p&gt;How do you make this? Can you give me example?&lt;/p&gt;
</description></item><item><title>Surface Opening up</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6460224</link><pubDate>Thu, 22 Nov 2007 01:22:08 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6460224</guid><dc:creator>Sean's Idea Kitchen</dc:creator><description>&lt;p&gt;Over at the Surface blog they're talking about what goes into creating an application for Surface. Two&lt;/p&gt;
</description></item><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6584522</link><pubDate>Wed, 28 Nov 2007 23:45:37 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6584522</guid><dc:creator>KevinKennedy</dc:creator><description>&lt;P&gt;nesher,&lt;/P&gt;
&lt;P&gt;You can do this using &lt;A class="" href="http://msdn2.microsoft.com/en-us/library/system.windows.routedevent.aspx"&gt;RoutedEvent&lt;/A&gt;s. &amp;nbsp; &amp;nbsp;If you have input that corresponds to positions on the screen you go through the following (very high level) steps:&lt;/P&gt;
&lt;P&gt;1) Use the Win32 &lt;A class="" href="http://msdn2.microsoft.com/en-us/library/ms633558.aspx"&gt;WindowFromPoint&lt;/A&gt; to determine if this input should be routed to your window.&lt;/P&gt;
&lt;P&gt;2) On the WPF side, you then use &lt;A class="" href="http://msdn2.microsoft.com/en-us/library/system.windows.uielement.inputhittest.aspx"&gt;UIElement.InputHitTest&lt;/A&gt; on your window’s root UIElement to determine which descendent element should receive the input&lt;/P&gt;
&lt;P&gt;3) Then you send a RoutedEvent to that UIElement with whatever information is important.&lt;/P&gt;
&lt;P&gt;4) The UIElement can then handle this however it wants. &amp;nbsp;If it is a button UIElement and the RoutedEvent was about some contact with the screen over it, then the button can show itself in the pressed state.&lt;/P&gt;
&lt;P&gt;There is a lot more that needs to go on if you want other people to be happy using this (Robert could cover that if there is interest.) but that is basically all I did when I first got WPF apps working on Surface.&lt;/P&gt;</description></item><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6597942</link><pubDate>Thu, 29 Nov 2007 15:59:25 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6597942</guid><dc:creator>nesher</dc:creator><description>&lt;p&gt;I have found a class named InputManager. I looks like it responsible for all input in WPF. It has support for Mouse,Keyboard and Stylus. I wonder if it could be used to implement &amp;quot;touch&amp;quot; devices?&lt;/p&gt;
&lt;p&gt;I understand that controls like ScatterView is a custom control. But how about a Button. Do I have to inherit from button and write my own code so that it response to contacts? Or it is possible to emulate mouse input and use standard wpf controls?&lt;/p&gt;</description></item><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6600287</link><pubDate>Thu, 29 Nov 2007 19:33:58 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6600287</guid><dc:creator>Robert Levy</dc:creator><description>&lt;p&gt;that's a great question, nesher. &amp;nbsp;i'll try to cover that in a more detailed post about our WPF layer in a few weeks.&lt;/p&gt;
&lt;p&gt;-r&lt;/p&gt;
</description></item><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6628417</link><pubDate>Sat, 01 Dec 2007 14:04:44 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6628417</guid><dc:creator>nesher</dc:creator><description>&lt;p&gt;great news rlevy, I'm waiting for your post :)&lt;/p&gt;
</description></item><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6630836</link><pubDate>Sat, 01 Dec 2007 17:04:41 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6630836</guid><dc:creator>Tanveer Badar</dc:creator><description>&lt;p&gt;&amp;quot;Unfortunately, the conventional computing system is built to expect just one mouse pointer.&amp;quot;&lt;/p&gt;
&lt;p&gt;Unfortunately, the conventional computing system uses only one mouse pointer by default. Support for multiple mouse pointers or generally, multiple input devices is present in the form of low level raw-input in Win32.&lt;/p&gt;
</description></item><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6642538</link><pubDate>Sun, 02 Dec 2007 18:21:30 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6642538</guid><dc:creator>adamhill</dc:creator><description>&lt;P&gt;Microsoft does support multiple mice in Managed apps via the MultiPoint SDK - &lt;A href="http://channel9.msdn.com/Showpost.aspx?postid=266221" target=_new rel=nofollow&gt;http://channel9.msdn.com/Showpost.aspx?postid=266221&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Download at: &lt;A href="http://www.microsoft.com/downloads/details.aspx?FamilyID=a137998b-e8d6-4fff-b805-2798d2c6e41d&amp;amp;DisplayLang=en" target=_new rel=nofollow&gt;http://www.microsoft.com/downloads/details.aspx?FamilyID=a137998b-e8d6-4fff-b805-2798d2c6e41d&amp;amp;DisplayLang=en&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;adam...&lt;/P&gt;</description></item><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6683801</link><pubDate>Thu, 06 Dec 2007 22:36:42 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6683801</guid><dc:creator>nesher</dc:creator><description>&lt;p&gt;Adamhill, unfortunatly MultiPoint does not support touchpad and stylus on my Tablet PC (Toshiba Portege m400).&lt;/p&gt;
</description></item><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6816393</link><pubDate>Thu, 20 Dec 2007 14:57:39 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6816393</guid><dc:creator>nesher</dc:creator><description>&lt;p&gt;Wenn can we await Part 2?&lt;/p&gt;
&lt;p&gt;Also I would like to read more about SDK.&lt;/p&gt;
</description></item><item><title>How creating Surface apps is different, part 2</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#6968723</link><pubDate>Thu, 03 Jan 2008 18:25:56 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:6968723</guid><dc:creator>Tales from the Microsoft Surface team</dc:creator><description>&lt;p&gt;How creating Surface apps is different, part 2 Continuing the list from my previous post Multiple simultaneous&lt;/p&gt;
</description></item><item><title>re: How creating Surface apps is different, part 1</title><link>http://blogs.msdn.com/surface/archive/2007/11/20/how-creating-surface-apps-is-different-part-1.aspx#8675669</link><pubDate>Tue, 01 Jul 2008 10:03:46 GMT</pubDate><guid isPermaLink="false">91d46819-8472-40ad-a661-2c78acb4018c:8675669</guid><dc:creator>parthiban s</dc:creator><description>&lt;p&gt;The information u provided was really helpfull,i am waiting for ur post part 2.&lt;/p&gt;
</description></item></channel></rss>