<rss version="2.0" xmlns:dc="http://purl.org/dc/elements/1.1/" xmlns:trackback="http://madskills.com/public/xml/rss/module/trackback/" xmlns:wfw="http://wellformedweb.org/CommentAPI/" xmlns:slash="http://purl.org/rss/1.0/modules/slash/" xmlns:copyright="http://blogs.law.harvard.edu/tech/rss" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Prabhu Kumar</title>
        <link>http://geekswithblogs.net/TechTwaddle/Default.aspx</link>
        <description> a tech twaddler..</description>
        <language>en-US</language>
        <copyright>TechTwaddle</copyright>
        <managingEditor>p.kumar999@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <image>
            <title>Prabhu Kumar</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/TechTwaddle/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>Windows Phone Mango 7.1 SDK Beta 2</title>
            <category>General</category>
            <category>Windows Phone 7</category>
            <category>Development</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2011/07/03/windows-phone-mango-7.1-sdk-beta-2.aspx</link>
            <description>&lt;p&gt;&lt;a href="http://techtwaddle.net/2011/07/03/windows-phone-mango-7-1-sdk-beta-2/"&gt;http://techtwaddle.net/2011/07/03/windows-phone-mango-7-1-sdk-beta-2/&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/146065.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2011/07/03/windows-phone-mango-7.1-sdk-beta-2.aspx</guid>
            <pubDate>Sun, 03 Jul 2011 16:56:46 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/146065.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2011/07/03/windows-phone-mango-7.1-sdk-beta-2.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/146065.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/146065.aspx</trackback:ping>
        </item>
        <item>
            <title>Windows Phone Mango Developer Tools</title>
            <category>Windows Phone 7</category>
            <category>Development</category>
            <category>General</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2011/05/25/windows-phone-mango-developer-tools.aspx</link>
            <description>&lt;p&gt;&lt;a title="http://techtwaddle.net/2011/05/25/windows-phone-mango-developer-tools/" href="http://techtwaddle.net/2011/05/25/windows-phone-mango-developer-tools/"&gt;http://techtwaddle.net/2011/05/25/windows-phone-mango-developer-tools/&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/145556.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2011/05/25/windows-phone-mango-developer-tools.aspx</guid>
            <pubDate>Wed, 25 May 2011 17:54:32 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/145556.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2011/05/25/windows-phone-mango-developer-tools.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/145556.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/145556.aspx</trackback:ping>
        </item>
        <item>
            <title>MIX&amp;rsquo;11 : Windows Phone Sessions</title>
            <category>Windows Phone 7</category>
            <category>General</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2011/04/24/mixrsquo11--windows-phone-sessions.aspx</link>
            <description>&lt;p align="justify"&gt;&lt;a title="http://techtwaddle.net/2011/04/24/mix11-windows-phone-sessions/" href="http://techtwaddle.net/2011/04/24/mix11-windows-phone-sessions/"&gt;http://techtwaddle.net/2011/04/24/mix11-windows-phone-sessions/&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/145023.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2011/04/24/mixrsquo11--windows-phone-sessions.aspx</guid>
            <pubDate>Sun, 24 Apr 2011 15:32:32 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/145023.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2011/04/24/mixrsquo11--windows-phone-sessions.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/145023.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/145023.aspx</trackback:ping>
        </item>
        <item>
            <title>Windows Phone 7: Freeing up space after installing the pre-NoDo update</title>
            <category>Windows Phone 7</category>
            <category>General</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2011/03/12/windows-phone-7-freeing-up-space-after-installing-the-pre-nodo.aspx</link>
            <description>&lt;p&gt;I just published a post on my blog at &lt;a href="http://www.techtwaddle.net"&gt;http://www.techtwaddle.net&lt;/a&gt;, here’s the link,&lt;/p&gt;  &lt;p&gt;&lt;a title="http://techtwaddle.net/2011/03/12/windows-phone-7-freeing-up-space-after-installing-the-pre-nodo-update/" href="http://techtwaddle.net/2011/03/12/windows-phone-7-freeing-up-space-after-installing-the-pre-nodo-update/"&gt;http://techtwaddle.net/2011/03/12/windows-phone-7-freeing-up-space-after-installing-the-pre-nodo-update/&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/144324.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2011/03/12/windows-phone-7-freeing-up-space-after-installing-the-pre-nodo.aspx</guid>
            <pubDate>Sat, 12 Mar 2011 12:58:07 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/144324.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2011/03/12/windows-phone-7-freeing-up-space-after-installing-the-pre-nodo.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/144324.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/144324.aspx</trackback:ping>
        </item>
        <item>
            <title>Windows Phone 7: Translation, rotation, scaling and the effect of &amp;lsquo;BitmapCache&amp;rsquo; on performance</title>
            <category>Windows Phone 7</category>
            <category>Development</category>
            <category>Applications</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2011/03/10/windows-phone-7-translation-rotation-scaling-and-the-effect-of.aspx</link>
            <description>&lt;p&gt;I just published a post on my blog at &lt;a href="http://www.techtwaddle.net"&gt;http://www.techtwaddle.net&lt;/a&gt;, here is the link:&lt;/p&gt;  &lt;p&gt;&lt;a title="http://techtwaddle.net/2011/03/10/windows-phone-7-translation-rotation-scaling-and-the-effect-of-bitmapcache-on-performance/" href="http://techtwaddle.net/2011/03/10/windows-phone-7-translation-rotation-scaling-and-the-effect-of-bitmapcache-on-performance/"&gt;http://techtwaddle.net/2011/03/10/windows-phone-7-translation-rotation-scaling-and-the-effect-of-bitmapcache-on-performance/&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/144277.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2011/03/10/windows-phone-7-translation-rotation-scaling-and-the-effect-of.aspx</guid>
            <pubDate>Wed, 09 Mar 2011 21:08:11 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/144277.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2011/03/10/windows-phone-7-translation-rotation-scaling-and-the-effect-of.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/144277.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/144277.aspx</trackback:ping>
        </item>
        <item>
            <title>What happens when you delete all the start screen tiles?</title>
            <category>Windows Phone 7</category>
            <category>General</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2011/02/13/what-happens-when-you-delete-all-the-start-screen-tiles.aspx</link>
            <description>&lt;p&gt;&lt;strong&gt;Note:&lt;/strong&gt; I am currently in the process of relocating my blog from &lt;a href="http://www.geekswithblogs.net/techtwaddle"&gt;http://www.geekswithblogs.net/techtwaddle&lt;/a&gt; to my new address at &lt;a href="http://www.techtwaddle.net"&gt;http://www.techtwaddle.net&lt;/a&gt; I suggest you point your feed readers to the new address as I slowly transition to my new shared-hosted, ad-free wordpress blog :)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Whathappenswhenyoudeleteallthestartscree_FFFB/remove-all-tiles_2.jpg" rel="lightbox"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; margin-left: 0px; border-left-width: 0px; margin-right: 0px" title="remove-all-tiles" border="0" alt="remove-all-tiles" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Whathappenswhenyoudeleteallthestartscree_FFFB/remove-all-tiles_thumb.jpg" width="132" height="244" /&gt;&lt;/a&gt;  Well, the start screen disappears and all you see is the application list, which normally shows up when you scroll to the right. Pretty interesting I thought. So the start screen is basically a shortcuts screen on steroids, much nicer looking and with tile notifications.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/143919.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2011/02/13/what-happens-when-you-delete-all-the-start-screen-tiles.aspx</guid>
            <pubDate>Sun, 13 Feb 2011 13:11:06 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/143919.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2011/02/13/what-happens-when-you-delete-all-the-start-screen-tiles.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/143919.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/143919.aspx</trackback:ping>
        </item>
        <item>
            <title>Windows Phone 7 Developer Tools &amp;ndash; January 2011 Update</title>
            <category>Development</category>
            <category>Windows Phone 7</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2011/02/07/windows-phone-7-developer-tools-ndash-january-2011-update.aspx</link>
            <description>&lt;p align="justify"&gt;&lt;strong&gt;Note:&lt;/strong&gt; I am currently in the process of relocating my blog from &lt;a href="http://www.geekswithblogs.net/techtwaddle"&gt;http://www.geekswithblogs.net/techtwaddle&lt;/a&gt; to my new address at &lt;a href="http://www.techtwaddle.net"&gt;http://www.techtwaddle.net&lt;/a&gt; I suggest you point your feed readers to the new address as I slowly transition to my new shared-hosted, ad-free wordpress blog :)&lt;/p&gt;  &lt;p&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/WindowsPhone7DeveloperToolsJanuary2011Up_12A2C/WP7EmuCopyPaste_4.jpg" rel="lightbox"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="WP7EmuCopyPaste" border="0" alt="WP7EmuCopyPaste" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/WindowsPhone7DeveloperToolsJanuary2011Up_12A2C/WP7EmuCopyPaste_thumb_1.jpg" width="250" height="202" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;If you haven’t heard already, the Jan 2011 update of the windows phone 7 developer tools is out, er, in Feb. You can download the installation files from here,&lt;/p&gt;  &lt;p&gt;&lt;a title="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=49b9d0c5-6597-4313-912a-f0cca9c7d277" href="http://www.microsoft.com/downloads/en/details.aspx?FamilyID=49b9d0c5-6597-4313-912a-f0cca9c7d277"&gt;http://www.microsoft.com/downloads/en/details.aspx?FamilyID=49b9d0c5-6597-4313-912a-f0cca9c7d277&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;The performance increase with the new emulator is clearly noticeable and the first time deploy is real quick! The emulator image should also be a precursor to the windows phone 7 OS update that we’ve been waiting for ever. The emulator image includes copy-paste functionality which is enabled by default on all textboxes, password boxes and edit controls within web browser control, so existing apps get this feature for free. Go ahead and give the new tools a try. If you want to experiment more you might be interested in a unlocked emulator image, follow the link for more information.&lt;/p&gt;  &lt;p&gt;&lt;a title="http://windowsphonehacker.com/latest_windows_phone_7_emulator_unlocked-02-05-11.php" href="http://windowsphonehacker.com/latest_windows_phone_7_emulator_unlocked-02-05-11.php"&gt;http://windowsphonehacker.com/latest_windows_phone_7_emulator_unlocked-02-05-11.php&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/143851.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2011/02/07/windows-phone-7-developer-tools-ndash-january-2011-update.aspx</guid>
            <pubDate>Mon, 07 Feb 2011 16:33:39 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/143851.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2011/02/07/windows-phone-7-developer-tools-ndash-january-2011-update.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/143851.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/143851.aspx</trackback:ping>
        </item>
        <item>
            <title>A tale of two dev accounts</title>
            <category>Windows Phone 7</category>
            <category>Development</category>
            <category>Rant</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2011/01/31/a-tale-of-two-dev-accounts.aspx</link>
            <description>&lt;p align="justify"&gt;&lt;strong&gt;Note:&lt;/strong&gt; I am currently in the process of relocating my blog from &lt;a href="http://www.geekswithblogs.net/techtwaddle"&gt;http://www.geekswithblogs.net/techtwaddle&lt;/a&gt; to my new address at &lt;a href="http://www.techtwaddle.net"&gt;http://www.techtwaddle.net&lt;/a&gt; I suggest you point your feed readers to the new address as I slowly transition to my new shared-hosted, ad-free wordpress blog :)&lt;/p&gt;  &lt;p align="justify"&gt; &lt;/p&gt;  &lt;p align="justify"&gt;You probably remember &lt;a href="http://techtwaddle.net/2010/10/31/just-another-post/"&gt;my rant from a while back about my windows mobile developer account having problems&lt;/a&gt; with the new AppHub, well, there have been few developments and I thought I should share it with you.&lt;/p&gt;  &lt;p align="justify"&gt;First up, the issue isn’t fixed yet. I still cannot login to AppHub using my windows mobile 6.x developer account and can’t view details of my Minesweeper app. Who knows how many copies its sold. I had &lt;a href="http://forums.create.msdn.com/forums/p/65996/407726.aspx"&gt;numerous exchanges with Microsoft’s support team&lt;/a&gt; on the AppHub forums and via email as well (support ticket), but somehow we never managed to get to the root of it. In fact, the support team itself grew so tired of the problem that they suggested I create a new dev account.&lt;/p&gt;  &lt;p align="justify"&gt;I grew impatient, and it was really frustrating to have an app ready for submission but not being able to do anything with it. Eventually, the frustration had to show somewhere, and it was on &lt;a href="http://forums.create.msdn.com/forums/p/70330/429415.aspx#429415"&gt;this forum thread&lt;/a&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font color="#800040" size="2"&gt;Prabhu Kumar in reply to Nick&lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font color="#800040" size="2"&gt;Nick, I feel for you and totally understand the frustration. Since day one I have been getting the XBOX profile linking error,      &lt;br /&gt;&lt;/font&gt;&lt;em&gt;     &lt;br /&gt;&lt;font color="#800040" size="2"&gt;We encountered an issue connecting your App Hub account with your Xbox Live Profile.        &lt;br /&gt;Please visit Xbox.com and update your contact information.         &lt;br /&gt;After you have updated your contact information, please return to the App Hub (https://users.create.msdn.com/Register) to continue.         &lt;br /&gt;&lt;/font&gt;&lt;/em&gt;&lt;strong&gt;     &lt;br /&gt;&lt;/strong&gt;&lt;font color="#800040" size="2"&gt;I have an app published on the Windows Mobile 6.x marketplace since Aug, now I can't view the details of this app.      &lt;br /&gt;I completed work on my WP7 application 1.5 months ago and the first version is ready for submission to marketplace, only if I can login. You can imagine how frustrating all this can be, the issue has taken far too long to be fixed, this has drained all my motivation.       &lt;br /&gt;      &lt;br /&gt;I have exchanged numerous mails with Microsoft support team on this issue, and from the looks of it they really are trying their best, unfortunately, their best is not good enough for some of us. During the first week of December I was told that there would be an update happening to AppHub around mid of December. I was hoping that the issue would be fixed but it wasn't. After the update the only change I notice is that the xbox.com link on the error page now takes me to the correct link. Previously, this link used to take me to the 404 page you mentioned above.       &lt;br /&gt;      &lt;br /&gt;Out of desperation, I am now considering creating another developer account on AppHub with a new live id, even this I am not 100% sure will work.       &lt;br /&gt;      &lt;br /&gt;I asked the support team when the next update to AppHub was planned and got this reply,       &lt;br /&gt;"&lt;strong&gt;&lt;em&gt;We do not have  release date to announce for the next App Hub update at this time. In regards to the login issue you are experiencing at this point the only solution would be to create a new account with a different live ID but make sure to go to &lt;a href="http://xbox.com/"&gt;xbox.com&lt;/a&gt; before hand to get all the information in order on that side.&lt;/em&gt;&lt;/strong&gt;"       &lt;br /&gt;      &lt;br /&gt;I know it's an extra $99, and not that I can't afford it but it doesn't feel right and I shouldn't have to be doing it in the first place. I have lost all hope of this issue being resolved.&lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;&lt;/p&gt;  &lt;p align="justify"&gt;I went ahead and created a new dev account, the id verification was in progress when Shaun Taulbee of Microsoft, who has been really helpful in the forums, replied saying,&lt;/p&gt;  &lt;p align="justify"&gt;&lt;font color="#800040" size="2"&gt;If you find it necessary to pay again to create a new account due to a Microsoft problem, send in a support request asking for a refund and we'll review it (and likely approve it given the circumstances).&lt;/font&gt;&lt;/p&gt;  &lt;p align="justify"&gt;The thought of refund made me happy, but I had my doubts. So once my second account was verified by Geotrust I applied for a refund through the developer dashboard, by creating a support ticket. Couple of days later I got an email from Microsoft saying that the refund had been approved! yay! Few days and the refund showed up on my bill,&lt;/p&gt;  &lt;p align="justify"&gt;&lt;a href="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Ataleoftwodeveloperaccounts_12359/ms_refund.jpg" rel="lightbox"&gt;&lt;img style="border-right-width: 0px; display: inline; border-top-width: 0px; border-bottom-width: 0px; border-left-width: 0px" title="ms_refund" border="0" alt="ms_refund" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Ataleoftwodeveloperaccounts_12359/ms_refund_thumb.jpg" width="720" height="41" /&gt;&lt;/a&gt; &lt;/p&gt;  &lt;p&gt;Well, thank you Microsoft, it means a lot. I am glad it’s over now. The new account works flawlessly. I would still like to get my first account working again and look at my app numbers for Win Mo 6.x, and probably transfer the credits to the new account somehow, but I’ll save it for another day. If you’ve had similar problems with the AppHub, and had to create a new account to submit your app, I suggest you contact the support team and get your dollars refunded!&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/143730.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2011/01/31/a-tale-of-two-dev-accounts.aspx</guid>
            <pubDate>Mon, 31 Jan 2011 16:28:19 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/143730.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2011/01/31/a-tale-of-two-dev-accounts.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/143730.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/143730.aspx</trackback:ping>
        </item>
        <item>
            <title>My shiny new gadget</title>
            <category>Windows Phone 7</category>
            <category>General</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2011/01/03/my-shiny-new-gadget.aspx</link>
            <description>&lt;p align="justify"&gt;About 3 months ago when &lt;a href="http://twitter.com/#!/PrabhuK/status/25274343945"&gt;I had tweeted&lt;/a&gt; (or twit?) that the HD7 could be my next phone I wasn’t a 100 percent sure, and when the &lt;a href="http://www.engadget.com/2010/10/21/htc-7-mozart-review/"&gt;HTC Mozart&lt;/a&gt; came out it was switch at first sight. I wanted to buy the Mozart mainly for three reasons; its unibody construction, smaller screen and the SLCD display. But now, holding a HD7 in my hand, I reminisce and think about how fate had its own plan. Too dramatic for a piece of gadget? Well, sort of, but seriously, this has been most exciting.&lt;/p&gt;
&lt;p&gt;So in short, I bought myself a &lt;a href="http://www.engadget.com/2010/10/20/htc-hd7-review/"&gt;HTC HD7&lt;/a&gt; and am really loving it so far. Here are some pics (taken from my HD2 which now lies in a corner, crying),&lt;/p&gt;
&lt;p&gt;&lt;img width="291" height="484" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Myshinynewgadget_12595/IMAG0417_e48f63c6-6a9c-42e9-b7b4-c69aeece870f.jpg" alt="IMAG0417" title="IMAG0417" style="border: 0px none; display: inline;" /&gt;    &lt;img width="644" height="387" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Myshinynewgadget_12595/IMAG0418_8c680020-755f-46b3-8d0e-6da5bd87efe0.jpg" alt="IMAG0418" title="IMAG0418" style="border: 0px none; display: inline;" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img width="291" height="484" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Myshinynewgadget_12595/IMAG0419_a2cdd31a-2461-4a5d-8841-f30bd2c19d58.jpg" alt="IMAG0419" title="IMAG0419" style="border: 0px none; margin: 0px 0px 5px; display: inline;" /&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Most of my day was spent setting up the device. Email accounts, Facebook, Marketplace etc. Since marketplace isn’t officially launched in India yet, my primary live id did not work. Whenever I tried launching marketplace it would say ‘&lt;em&gt;marketplace is not currently supported in your country&lt;/em&gt;’. Searching the forums I found an easy work around. Just create a dummy live id with the country set to UK or US and log in to the device using this id. I was worried if the contacts and feeds from my primary live account would not be updated but that was not a problem. Adding another live account into the device does import your contacts, calendar and feeds from it. And that’s it, marketplace now works perfectly. I installed a few trial and free applications; haven’t checked if I can purchase apps though, will check that later and update this post.&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p align="justify"&gt;There is one issue I am still facing with the device, I can’t access the internet over GPRS (see update below). Windows Phone 7 only gives you the option to add an ‘&lt;a href="http://en.wikipedia.org/wiki/Access_Point_Name"&gt;APN&lt;/a&gt;’ and nothing else. Checking the connection settings on my HD2, I found out that there is also a proxy server I need to add to access GPRS, but so far I haven’t found a way to do that on WP7. Ideally HTC should have taken care of this, detect the operator and apply that operators settings on the device, but looks like that’s not happening. I also tried the ‘Connection Settings’ application that HTC bundled with the device, but it did nothing magical. If you’re reading this and know how to fix this problem please leave a comment.&lt;/p&gt;
&lt;p align="justify"&gt;The next thing I did is install apps, a lot of apps. Read &lt;a href="http://www.engadget.com/2010/12/31/just-got-a-windows-phone-7-handset-the-best-apps-accessories/"&gt;Engadget’s guide to essential apps for WP7&lt;/a&gt;. The apps and games I installed so far include Beezz (twitter app with push notifications), twitter (the official twitter app), Facebook, Youtube, NFS Undercover, Rocket Riot, Krashlander, Unite and the list goes on. All the apps run super smooth. The display looks fine indoors but I know it’s going to suck in bright sunlight. Anyhow, I am really impressed with what I’ve seen so far.&lt;/p&gt;
&lt;p&gt;I leave you with a few more photos. Have a great year ahead. Ciao!&lt;/p&gt;
&lt;p&gt;&lt;img width="291" height="484" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Myshinynewgadget_12595/IMAG0420_ea3b50c0-33cf-46bf-985d-15a6e0ab8029.jpg" alt="IMAG0420" title="IMAG0420" style="border: 0px none; display: inline;" /&gt; &lt;img width="644" height="387" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Myshinynewgadget_12595/IMAG0422_402af62c-45ca-4227-8cf3-20bf955e000f.jpg" alt="IMAG0422" title="IMAG0422" style="border: 0px none; display: inline;" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img width="644" height="387" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Myshinynewgadget_12595/IMAG0423_fdd97282-9864-4314-b3f4-34dd4292ca64.jpg" alt="IMAG0423" title="IMAG0423" style="border: 0px none; display: inline;" /&gt;&lt;/p&gt;
&lt;p&gt;&lt;img width="644" height="387" border="0" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/Myshinynewgadget_12595/IMAG0424_ad61037e-90d9-4322-bd86-8ebb8697eee3.jpg" alt="IMAG0424" title="IMAG0424" style="border: 0px none; display: inline;" /&gt;&lt;/p&gt;
&lt;p&gt; &lt;/p&gt;
&lt;p&gt;&lt;strong&gt;Update:&lt;/strong&gt;&lt;/p&gt;
&lt;p&gt;Well, turns out that the Vodafone Live GPRS Plan is not supported by HD7. I had to switch to a different plan, Vodafone Mobile Connect (VMC), which is much much more expensive than the first (about 4 times as much). Anyways, I have it working now.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/143321.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2011/01/03/my-shiny-new-gadget.aspx</guid>
            <pubDate>Mon, 03 Jan 2011 15:23:12 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/143321.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2011/01/03/my-shiny-new-gadget.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/143321.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/143321.aspx</trackback:ping>
        </item>
        <item>
            <title>Windows Phone 7: Building a simple dictionary web client</title>
            <category>Development</category>
            <category>Applications</category>
            <category>Windows Phone 7</category>
            <link>http://geekswithblogs.net/TechTwaddle/archive/2010/12/30/windows-phone-7-building-a-simple-dictionary-web-client.aspx</link>
            <description>&lt;p align="justify"&gt;Like I mentioned in &lt;a href="http://geekswithblogs.net/TechTwaddle/archive/2010/11/29/dictionary-web-service.aspx"&gt;this post&lt;/a&gt; a while back, I came across a dictionary web service called &lt;a href="http://www.aonaware.com/index.htm"&gt;Aonaware&lt;/a&gt; that serves up word definitions from various dictionaries and is really easy to use. The services page on their website, &lt;a title="http://services.aonaware.com/DictService/DictService.asmx" href="http://services.aonaware.com/DictService/DictService.asmx"&gt;http://services.aonaware.com/DictService/DictService.asmx&lt;/a&gt;, lists all the operations that are supported by the dictionary service. Here they are,&lt;/p&gt;
&lt;p&gt;&lt;font color="#400000"&gt;Word Dictionary Web Service&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#400000"&gt;The following operations are supported. For a formal definition, please review the &lt;/font&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?WSDL"&gt;&lt;font color="#400000"&gt;Service Description&lt;/font&gt;&lt;/a&gt;&lt;font color="#400000"&gt;. &lt;/font&gt;&lt;/p&gt;
&lt;ul&gt;
    &lt;li&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?op=Define"&gt;Define&lt;/a&gt;      &lt;br /&gt;
    &lt;font color="#400000"&gt;Define given word, returning definitions from all dictionaries &lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?op=DefineInDict"&gt;DefineInDict&lt;/a&gt;      &lt;br /&gt;
    &lt;font color="#400000"&gt;Define given word, returning definitions from specified dictionary &lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?op=DictionaryInfo"&gt;DictionaryInfo&lt;/a&gt;      &lt;br /&gt;
    &lt;font color="#400000"&gt;Show information about the specified dictionary &lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?op=DictionaryList"&gt;DictionaryList&lt;/a&gt;      &lt;br /&gt;
    &lt;font color="#400000"&gt;Returns a list of available dictionaries &lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?op=DictionaryListExtended"&gt;DictionaryListExtended&lt;/a&gt;      &lt;br /&gt;
    &lt;font color="#400000"&gt;Returns a list of advanced dictionaries (e.g. translating dictionaries) &lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?op=Match"&gt;Match&lt;/a&gt;      &lt;br /&gt;
    &lt;font color="#400000"&gt;Look for matching words in all dictionaries using the given strategy &lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?op=MatchInDict"&gt;MatchInDict&lt;/a&gt;      &lt;br /&gt;
    &lt;font color="#400000"&gt;Look for matching words in the specified dictionary using the given strategy &lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?op=ServerInfo"&gt;ServerInfo&lt;/a&gt;      &lt;br /&gt;
    &lt;font color="#400000"&gt;Show remote server information &lt;/font&gt;&lt;/li&gt;
    &lt;li&gt;&lt;a href="http://services.aonaware.com/DictService/DictService.asmx?op=StrategyList"&gt;StrategyList&lt;/a&gt;      &lt;br /&gt;
    &lt;font color="#400000"&gt;Return list of all available strategies on the server &lt;/font&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;p align="justify"&gt;Follow the links above to get more information on each API.&lt;/p&gt;
&lt;p align="justify"&gt;In this post we will be building a simple windows phone 7 client which uses this service to get word definitions for words entered by the user. The application will also allow the user to select a dictionary from all the available ones and look up the word definition in that dictionary. So of all the apis above we will be using only two, &lt;em&gt;DictionaryList()&lt;/em&gt; to get a list of all supported dictionaries and &lt;em&gt;DefineInDict()&lt;/em&gt; to get the word definition from a particular dictionary.&lt;/p&gt;
&lt;p align="justify"&gt;Before we get started, a note to you all; I would have liked to implement this application using concepts from data binding, item templates, data templates etc. I have a basic understanding of what they are but, being a beginner, I am not very comfortable with those topics yet so I didn’t use them. I thought I’ll get this version out of the way and maybe in the next version I could give those a try.&lt;/p&gt;
&lt;p align="justify"&gt;A somewhat scary mock-up of the what the final application will look like,&lt;/p&gt;
&lt;p&gt;&lt;img height="409" border="0" width="240" style="border: 0px none ; display: inline;" title="AppMockup" alt="AppMockup" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/WindowsPhone7Buildingasimpledictionarywe_13E86/AppMockup_f158c577-3ef8-47bb-8582-0ca83463d2b5.jpg" /&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;em&gt;Select Dictionary &lt;/em&gt;is a list picker control from the &lt;a href="http://silverlight.codeplex.com/"&gt;silverlight toolkit&lt;/a&gt; (you need to &lt;a href="http://silverlight.codeplex.com/releases/view/55034"&gt;download and install&lt;/a&gt; the toolkit if you haven’t already). Below it is a textbox where the user can enter words to look up and a button beside it to fetch the word definition when clicked. Finally we have a textblock which occupies the remaining area and displays the word definition from the selected dictionary.&lt;/p&gt;
&lt;p align="justify"&gt;Create a silverlight application for windows phone 7, AonawareDictionaryClient, and add references to the silverlight toolkit and the web service. From the solution explorer right on &lt;em&gt;References&lt;/em&gt; and select &lt;em&gt;Microsoft.Phone.Controls.Toolkit&lt;/em&gt; from under the .NET tab,&lt;/p&gt;
&lt;p&gt;&lt;img height="410" border="0" width="486" style="border: 0px none ; display: inline;" title="adding-reference-sl-toolkit" alt="adding-reference-sl-toolkit" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/WindowsPhone7Buildingasimpledictionarywe_13E86/adding-reference-sl-toolkit.jpg" /&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Next, add a reference to the web service. Again right click on &lt;em&gt;References&lt;/em&gt; and this time select &lt;em&gt;Add Service Reference&lt;/em&gt; In the resulting dialog paste the service url in the Address field and press go, (url –&amp;gt; &lt;a title="http://services.aonaware.com/DictService/DictService.asmx" href="http://services.aonaware.com/DictService/DictService.asmx"&gt;http://services.aonaware.com/DictService/DictService.asmx&lt;/a&gt;)&lt;/p&gt;
&lt;p&gt;&lt;img height="512" border="0" width="635" style="border: 0px none ; display: inline;" title="AddingReference" alt="AddingReference" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/WindowsPhone7Buildingasimpledictionarywe_13E86/AddingReference.jpg" /&gt;&lt;/p&gt;
&lt;p align="justify"&gt;once the service is discovered, provide a name for the NameSpace, in this case I’ve called it &lt;em&gt;AonawareDictionaryService&lt;/em&gt;. Press OK. You can now use the classes and functions that are generated in the &lt;em&gt;AonawareDictionaryClient.AonawareDictionaryService&lt;/em&gt; namespace.&lt;/p&gt;
&lt;p align="justify"&gt;Let’s get the UI done now. In &lt;em&gt;MainPage.xaml&lt;/em&gt; add a namespace declaration to use the toolkit controls,&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;xmlns:toolkit="clr-namespace:Microsoft.Phone.Controls;assembly=Microsoft.Phone.Controls.Toolkit"&lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;the content of &lt;em&gt;LayoutRoot&lt;/em&gt; is changed as follows, (sorry, no syntax highlighting in this post)&lt;/p&gt;
&lt;p&gt;&lt;font color="#400000"&gt;&lt;font face="Arial" size="2"&gt;&amp;lt;StackPanel x:Name="TitlePanel" Grid.Row="0" Margin="12,5,0,5"&amp;gt;       &lt;br /&gt;
    &amp;lt;TextBlock x:Name="ApplicationTitle" Text="AONAWARE DICTIONARY CLIENT" Style="{StaticResource PhoneTextNormalStyle}"/&amp;gt;        &lt;br /&gt;
&lt;/font&gt;&lt;font size="2"&gt;&lt;font face="Arial"&gt;&lt;font color="#008000"&gt;    &amp;lt;!--&amp;lt;TextBlock x:Name="PageTitle" Text="page name" Margin="9,-7,0,0" Style="{StaticResource PhoneTextTitle1Style}"/&amp;gt;--&amp;gt;           &lt;br /&gt;
&lt;/font&gt;&amp;lt;/StackPanel&amp;gt; &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font color="#400000"&gt;&lt;font size="2"&gt;&lt;font face="Arial"&gt;&lt;font color="#008000"&gt;&amp;lt;!--ContentPanel - place additional content here--&amp;gt;           &lt;br /&gt;
&lt;/font&gt;&amp;lt;Grid x:Name="ContentPanel" Grid.Row="1" Margin="12,0,12,0"&amp;gt;          &lt;br /&gt;
    &amp;lt;Grid.RowDefinitions&amp;gt;          &lt;br /&gt;
        &amp;lt;RowDefinition Height="Auto"/&amp;gt;          &lt;br /&gt;
        &amp;lt;RowDefinition Height="Auto"/&amp;gt;          &lt;br /&gt;
        &amp;lt;RowDefinition Height="*"/&amp;gt;          &lt;br /&gt;
    &amp;lt;/Grid.RowDefinitions&amp;gt;          &lt;br /&gt;
    &amp;lt;toolkit:ListPicker Grid.Row="0" x:Name="listPickerDictionaryList"          &lt;br /&gt;
                        Header="Select Dictionary :"&amp;gt;          &lt;br /&gt;
    &amp;lt;/toolkit:ListPicker&amp;gt; &lt;/font&gt;&lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;    &amp;lt;Grid Grid.Row="1" Margin="0,5,0,0"&amp;gt;     &lt;br /&gt;
        &amp;lt;Grid.ColumnDefinitions&amp;gt;      &lt;br /&gt;
            &amp;lt;ColumnDefinition Width="*"/&amp;gt;      &lt;br /&gt;
            &amp;lt;ColumnDefinition Width="Auto" /&amp;gt;      &lt;br /&gt;
        &amp;lt;/Grid.ColumnDefinitions&amp;gt; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;        &amp;lt;TextBox x:Name="txtboxInputWord" Grid.Column="0" GotFocus="OnTextboxInputWordGotFocus" /&amp;gt;     &lt;br /&gt;
        &amp;lt;Button x:Name="btnGo" Grid.Column="1" Click="OnButtonGoClick" &amp;gt;      &lt;br /&gt;
            &amp;lt;Button.Content&amp;gt;      &lt;br /&gt;
                &amp;lt;Image Source="/images/button-go.png"/&amp;gt;      &lt;br /&gt;
            &amp;lt;/Button.Content&amp;gt;      &lt;br /&gt;
        &amp;lt;/Button&amp;gt;      &lt;br /&gt;
    &amp;lt;/Grid&amp;gt; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;    &amp;lt;ScrollViewer Grid.Row="2" x:Name="scrollViewer"&amp;gt;     &lt;br /&gt;
        &amp;lt;TextBlock  Margin="12,5,12,5"  x:Name="txtBlockWordMeaning" HorizontalAlignment="Stretch"      &lt;br /&gt;
                   VerticalAlignment="Stretch" TextWrapping="Wrap"       &lt;br /&gt;
                   FontSize="26" /&amp;gt;      &lt;br /&gt;
    &amp;lt;/ScrollViewer&amp;gt;      &lt;br /&gt;
&amp;lt;/Grid&amp;gt;&lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;I have commented out the &lt;em&gt;PageTitle &lt;/em&gt;as it occupies too much valuable space, and the &lt;em&gt;ContentPanel&lt;/em&gt; is changed to contain three rows. First row contains the list picker control, second row contains the textbox and the button, and the third row contains a textblock within a scroll viewer.&lt;/p&gt;
&lt;p align="justify"&gt;The designer will now be showing the final ui,&lt;/p&gt;
&lt;p&gt;&lt;img height="484" border="0" width="273" style="border: 0px none ; display: inline;" title="designerViewOfUI" alt="designerViewOfUI" src="http://geekswithblogs.net/images/geekswithblogs_net/TechTwaddle/WindowsLiveWriter/WindowsPhone7Buildingasimpledictionarywe_13E86/designerViewOfUI.jpg" /&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Now go to &lt;em&gt;MainPage.xaml.cs&lt;/em&gt;, and add the following namespace declarations,&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;using Microsoft.Phone.Controls;     &lt;br /&gt;
using AonawareDictionaryClient.AonawareDictionaryService;      &lt;br /&gt;
using System.IO.IsolatedStorage;&lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;A class called &lt;em&gt;DictServiceSoapClient&lt;/em&gt; would have been created for you in the background when you added a reference to the web service. This class functions as a wrapper to the services exported by the web service. All the web service functions that we saw at the start can be access through this class, or more precisely through an object of this class.&lt;/p&gt;
&lt;p align="justify"&gt;Create a data member of type &lt;em&gt;DictServiceSoapClient&lt;/em&gt; in the &lt;em&gt;Mainpage&lt;/em&gt; class, and a function which initializes it,&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;DictServiceSoapClient DictSvcClient = null; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;private DictServiceSoapClient GetDictServiceSoapClient()     &lt;br /&gt;
{      &lt;br /&gt;
    if (null == DictSvcClient)      &lt;br /&gt;
    {      &lt;br /&gt;
        DictSvcClient = new DictServiceSoapClient();      &lt;br /&gt;
    } &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;    return DictSvcClient;     &lt;br /&gt;
} &lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;We have two major tasks remaining. First, when the application loads we need to populate the list picker with all the supported dictionaries and second, when the user enters a word and clicks on the arrow button we need to fetch the word’s meaning.&lt;/p&gt;
&lt;p&gt;&lt;strong&gt;&lt;br /&gt;
Populating the List Picker&lt;/strong&gt;&lt;/p&gt;
&lt;p align="justify"&gt;In the &lt;em&gt;OnNavigatingTo&lt;/em&gt; event of the &lt;em&gt;MainPage&lt;/em&gt;, we call the &lt;em&gt;DictionaryList()&lt;/em&gt; api. This can also be done in the &lt;em&gt;OnLoading&lt;/em&gt; event handler of the &lt;em&gt;MainPage&lt;/em&gt;; not sure if one has an advantage over the other. Here’s the code for &lt;em&gt;OnNavigatedTo&lt;/em&gt;,&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;protected override void OnNavigatedTo(System.Windows.Navigation.NavigationEventArgs e)     &lt;br /&gt;
{      &lt;br /&gt;
    DictServiceSoapClient client = GetDictServiceSoapClient(); &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    client.DictionaryListCompleted += new EventHandler&amp;lt;DictionaryListCompletedEventArgs&amp;gt;(OnGetDictionaryListCompleted); &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    client.DictionaryListAsync(); &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    base.OnNavigatedTo(e);     &lt;br /&gt;
} &lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Windows Phone 7 supports only async calls to web services. When we added a reference to the dictionary service, asynchronous versions of all the functions were generated automatically. So in the above function we register a handler to the &lt;em&gt;DictionaryListCompleted&lt;/em&gt; event which will occur when the call to &lt;em&gt;DictionaryList()&lt;/em&gt; gets a response from the server. Then we call the &lt;em&gt;DictionaryListAsync()&lt;/em&gt; function which is the async version of the &lt;em&gt;DictionaryList()&lt;/em&gt; api. The result of this api will be sent to the handler &lt;em&gt;OnGetDictionaryListCompleted()&lt;/em&gt;,&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;void OnGetDictionaryListCompleted(object sender, DictionaryListCompletedEventArgs e)     &lt;br /&gt;
{      &lt;br /&gt;
    IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings;      &lt;br /&gt;
    Dictionary[] listOfDictionaries; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    if (e.Error == null)     &lt;br /&gt;
    {      &lt;br /&gt;
        listOfDictionaries = e.Result;      &lt;br /&gt;
        PopulateListPicker(listOfDictionaries, settings);      &lt;br /&gt;
    }      &lt;br /&gt;
    else if (settings.Contains("SavedDictionaryList"))      &lt;br /&gt;
    {      &lt;br /&gt;
        listOfDictionaries = settings["SavedDictionaryList"] as Dictionary[];      &lt;br /&gt;
        PopulateListPicker(listOfDictionaries, settings);      &lt;br /&gt;
    }      &lt;br /&gt;
    else      &lt;br /&gt;
    {      &lt;br /&gt;
        MessageBoxResult res = MessageBox.Show("An error occured while retrieving dictionary list, do you want to try again?", "Error", MessageBoxButton.OKCancel); &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;        if (MessageBoxResult.OK == res)     &lt;br /&gt;
        {      &lt;br /&gt;
            GetDictServiceSoapClient().DictionaryListAsync();      &lt;br /&gt;
        }      &lt;br /&gt;
    } &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    settings.Save();     &lt;br /&gt;
}&lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;I have used &lt;em&gt;IsolatedStorageSettings&lt;/em&gt; to store a few things; the entire dictionary list and the dictionary that is selected when the user exits the application, so that the next time when the user starts the application the current dictionary is set to the last selected value. First we check if the api returned any error, if the error object is null &lt;em&gt;e.Result&lt;/em&gt; will contain the list (actually array) of &lt;em&gt;Dictionary&lt;/em&gt; type objects. If there was an error, we check the isolated storage settings to see if there is a dictionary list stored from a previous instance of the application and if so, we populate the list picker based on this saved list. Note that in this case there are chances that the dictionary list might be out of date if there have been changes on the server. Finally, if none of these cases are true, we display an error message to the user and try to fetch the list again.&lt;/p&gt;
&lt;p align="justify"&gt;&lt;em&gt;PopulateListPicker()&lt;/em&gt; is passed the array of &lt;em&gt;Dictionary&lt;/em&gt; objects and the settings object as well,&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;void PopulateListPicker(Dictionary[] listOfDictionaries, IsolatedStorageSettings settings)     &lt;br /&gt;
{      &lt;br /&gt;
    listPickerDictionaryList.Items.Clear(); &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    foreach (Dictionary dictionary in listOfDictionaries)     &lt;br /&gt;
    {      &lt;br /&gt;
        listPickerDictionaryList.Items.Add(dictionary.Name);      &lt;br /&gt;
    } &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    settings["SavedDictionaryList"] = listOfDictionaries; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    string savedDictionaryName;     &lt;br /&gt;
    if (settings.Contains("SavedDictionary"))      &lt;br /&gt;
    {      &lt;br /&gt;
        savedDictionaryName = settings["SavedDictionary"] as string;      &lt;br /&gt;
    }      &lt;br /&gt;
    else      &lt;br /&gt;
    {      &lt;br /&gt;
        savedDictionaryName = "WordNet (r) 2.0"; //default dictionary, wordnet      &lt;br /&gt;
    } &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    foreach (string dictName in listPickerDictionaryList.Items)     &lt;br /&gt;
    {      &lt;br /&gt;
        if (dictName == savedDictionaryName)      &lt;br /&gt;
        {      &lt;br /&gt;
            listPickerDictionaryList.SelectedItem = dictName;      &lt;br /&gt;
            break;      &lt;br /&gt;
        }      &lt;br /&gt;
    } &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font size="2"&gt;&lt;font face="arial" color="#400000"&gt;    settings["SavedDictionary"] = listPickerDictionaryList.SelectedItem as string;       &lt;br /&gt;
} &lt;/font&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;We first clear all the items from the list picker, add the dictionary names from the array and then create a key in the settings called &lt;em&gt;SavedDictionaryList&lt;/em&gt; and store the dictionary list in it. We then check if there is saved dictionary available from a previous instance, if there is, we set it as the selected item in the list picker. And if not, we set “WordNet ® 2.0” as the default dictionary. Before returning, we save the selected dictionary in the “&lt;em&gt;SavedDictionary&lt;/em&gt;” key of the isolated storage settings.&lt;/p&gt;
&lt;p&gt;&lt;br /&gt;
&lt;strong&gt;Fetching word definitions&lt;/strong&gt;&lt;/p&gt;
&lt;p align="justify"&gt;Getting this part done is very similar to the above code. We get the input word from the textbox, call into &lt;em&gt;DefineInDictAsync()&lt;/em&gt; to fetch the definition and when &lt;em&gt;DefineInDictAsync&lt;/em&gt; completes, we get the result and display it in the textblock. Here is the handler for the button click,&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;private void OnButtonGoClick(object sender, RoutedEventArgs e)     &lt;br /&gt;
{      &lt;br /&gt;
    txtBlockWordMeaning.Text = "Please wait.."; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    if (txtboxInputWord.Text.Trim().Length &amp;lt;= 0)     &lt;br /&gt;
    {      &lt;br /&gt;
        MessageBox.Show("Please enter a word in the textbox and press 'Go'");      &lt;br /&gt;
    }      &lt;br /&gt;
    else      &lt;br /&gt;
    {      &lt;br /&gt;
        Dictionary[] listOfDictionaries = settings["SavedDictionaryList"] as Dictionary[];      &lt;br /&gt;
        string selectedDictionary = listPickerDictionaryList.SelectedItem.ToString(); &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;        string dictId = "wn"; //default dictionary is wordnet (wn is the dict id) &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;        foreach (Dictionary dict in listOfDictionaries)     &lt;br /&gt;
        {      &lt;br /&gt;
            if (dict.Name == selectedDictionary)      &lt;br /&gt;
            {      &lt;br /&gt;
                dictId = dict.Id;      &lt;br /&gt;
                break;      &lt;br /&gt;
            }      &lt;br /&gt;
        } &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;        DictServiceSoapClient client = GetDictServiceSoapClient(); &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;        client.DefineInDictCompleted += new EventHandler&amp;lt;DefineInDictCompletedEventArgs&amp;gt;(OnDefineInDictCompleted);     &lt;br /&gt;
        client.DefineInDictAsync(dictId, txtboxInputWord.Text.Trim());      &lt;br /&gt;
    }      &lt;br /&gt;
}&lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;We validate the input and then select the dictionary id based on the currently selected dictionary. We need the dictionary id because the api &lt;em&gt;DefineInDict()&lt;/em&gt; expects the dictionary identifier and not the dictionary name. We could very well have stored the dictionary id in isolated storage settings too. Again, same as before, we register a event handler for the &lt;em&gt;DefineInDictCompleted&lt;/em&gt; event and call the &lt;em&gt;DefineInDictAsync()&lt;/em&gt; method passing in the dictionary id and the input word.&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;void OnDefineInDictCompleted(object sender, DefineInDictCompletedEventArgs e)     &lt;br /&gt;
{      &lt;br /&gt;
    WordDefinition wd = e.Result; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;    scrollViewer.ScrollToVerticalOffset(0.0f); &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="Arial" color="#400000" size="2"&gt;    if (wd == null || e.Error != null || wd.Definitions.Length == 0)     &lt;br /&gt;
    {      &lt;br /&gt;
        txtBlockWordMeaning.Text = String.Format("No definitions were found for '{0}' in '{1}'", txtboxInputWord.Text.Trim(), listPickerDictionaryList.SelectedItem.ToString().Trim());      &lt;br /&gt;
    }      &lt;br /&gt;
    else      &lt;br /&gt;
    {      &lt;br /&gt;
        foreach (Definition def in wd.Definitions)      &lt;br /&gt;
        {      &lt;br /&gt;
            string str = def.WordDefinition;      &lt;br /&gt;
            str = str.Replace("  ", " "); //some formatting      &lt;br /&gt;
            txtBlockWordMeaning.Text = str;      &lt;br /&gt;
        }      &lt;br /&gt;
    }      &lt;br /&gt;
} &lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;When the api completes, &lt;em&gt;e.Result&lt;/em&gt; will contain a &lt;em&gt;WordDefnition&lt;/em&gt; object. This class is also generated in the background while adding the service reference. We check the word definitions within this class to see if any results were returned, if not, we display a message to the user in the textblock. If a definition was found the text on the textblock is set to display the definition of the word.&lt;/p&gt;
&lt;p align="justify"&gt;Adding final touches, we now need to save the current dictionary when the application exits. A small but useful thing is selecting the entire word in the input textbox when the user selects it. This makes sure that if the user has looked up a definition for a really long word, he doesn’t have to press ‘&lt;em&gt;clear&lt;/em&gt;’ too many times to enter the next word,&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;protected override void OnNavigatingFrom(System.Windows.Navigation.NavigatingCancelEventArgs e)     &lt;br /&gt;
{      &lt;br /&gt;
    IsolatedStorageSettings settings = IsolatedStorageSettings.ApplicationSettings; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    settings["SavedDictionary"] = listPickerDictionaryList.SelectedItem as string; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    settings.Save(); &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    base.OnNavigatingFrom(e);     &lt;br /&gt;
} &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;private void OnTextboxInputWordGotFocus(object sender, RoutedEventArgs e)     &lt;br /&gt;
{      &lt;br /&gt;
    TextBox txtbox = sender as TextBox; &lt;/font&gt;&lt;/p&gt;
&lt;p&gt;&lt;font face="arial" color="#400000" size="2"&gt;    if (txtbox.Text.Trim().Length &amp;gt; 0)     &lt;br /&gt;
    {      &lt;br /&gt;
        txtbox.SelectionStart = 0;      &lt;br /&gt;
        txtbox.SelectionLength = txtbox.Text.Length;      &lt;br /&gt;
    }      &lt;br /&gt;
} &lt;/font&gt;&lt;/p&gt;
&lt;p align="justify"&gt;&lt;em&gt;OnNavigatingFrom()&lt;/em&gt; is called whenever you navigate away from the &lt;em&gt;MainPage&lt;/em&gt;, since our application contains only one page that would mean that it is exiting (or getting tombstoned).&lt;/p&gt;
&lt;p align="justify"&gt;I leave you with a short video of the application in action, but before that if you have any suggestions on how to make the code better and improve it please do leave a comment.&lt;/p&gt;
&lt;p&gt;&lt;object height="385" width="480"&gt;
&lt;param value="http://www.youtube.com/v/cqruDwzO_90?fs=1&amp;amp;hl=en_US&amp;amp;color1=0x3a3a3a&amp;amp;color2=0x999999" name="movie" /&gt;
&lt;param value="true" name="allowFullScreen" /&gt;
&lt;param value="always" name="allowscriptaccess" /&gt;&lt;embed height="385" width="480" allowfullscreen="true" allowscriptaccess="always" type="application/x-shockwave-flash" src="http://www.youtube.com/v/cqruDwzO_90?fs=1&amp;amp;hl=en_US&amp;amp;color1=0x3a3a3a&amp;amp;color2=0x999999"&gt;&lt;/embed&gt;&lt;/object&gt;&lt;/p&gt;
&lt;p&gt;Until next time…&lt;/p&gt; &lt;img src="http://geekswithblogs.net/TechTwaddle/aggbug/143273.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>TechTwaddle</dc:creator>
            <guid>http://geekswithblogs.net/TechTwaddle/archive/2010/12/30/windows-phone-7-building-a-simple-dictionary-web-client.aspx</guid>
            <pubDate>Wed, 29 Dec 2010 19:36:45 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/TechTwaddle/comments/143273.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/TechTwaddle/archive/2010/12/30/windows-phone-7-building-a-simple-dictionary-web-client.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/TechTwaddle/comments/commentRss/143273.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/TechTwaddle/services/trackbacks/143273.aspx</trackback:ping>
        </item>
    </channel>
</rss>
