<?xml version='1.0' encoding='UTF-8'?><?xml-stylesheet href="http://www.blogger.com/styles/atom.css" type="text/css"?><feed xmlns='http://www.w3.org/2005/Atom' xmlns:openSearch='http://a9.com/-/spec/opensearchrss/1.0/' xmlns:georss='http://www.georss.org/georss' xmlns:gd='http://schemas.google.com/g/2005' xmlns:thr='http://purl.org/syndication/thread/1.0'><id>tag:blogger.com,1999:blog-38888296</id><updated>2012-01-26T07:25:28.229+08:00</updated><category term='C#'/><category term='Interop'/><category term='Printing'/><category term='DjVu'/><category term='CSS'/><category term='PDF'/><category term='Tablet PC'/><category term='Linux'/><category term='Office'/><category term='XML'/><category term='Setup and Deployment'/><category term='Rant'/><category term='Windows'/><category term='JavaScript'/><category term='WPF'/><category term='Facebook'/><category term='ASP.NET'/><title type='text'>C# Snippets</title><subtitle type='html'>A collection of my C# classes, findings and rants.</subtitle><link rel='http://schemas.google.com/g/2005#feed' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/posts/default'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default?max-results=100'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/'/><link rel='hub' href='http://pubsubhubbub.appspot.com/'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><generator version='7.00' uri='http://www.blogger.com'>Blogger</generator><openSearch:totalResults>49</openSearch:totalResults><openSearch:startIndex>1</openSearch:startIndex><openSearch:itemsPerPage>100</openSearch:itemsPerPage><entry><id>tag:blogger.com,1999:blog-38888296.post-3529401170054326367</id><published>2011-12-29T14:33:00.001+08:00</published><updated>2011-12-29T14:33:55.649+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><title type='text'>jQuery Mobile swiperight too sensitive</title><summary type='text'>While adding functionalities that triggers when the jQuery Mobile swiperight event is fired, I met the same problem as ade_cd, where the swiperight event gets triggered even when I am scrolling a page. On examining the jQuery Mobile 1.0 source code, I realized that the jQuery Mobile team has taken his suggestion and made the previously hardcoded values into parameters.  The parameters should be </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/3529401170054326367/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=3529401170054326367' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3529401170054326367'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3529401170054326367'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2011/12/jquery-mobile-swiperight-too-sensitive.html' title='jQuery Mobile swiperight too sensitive'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-1934538466643915461</id><published>2011-12-08T13:23:00.001+08:00</published><updated>2011-12-08T13:23:09.247+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Getting the DayOfWeek in Linq to Entities</title><summary type='text'>Entity Framework has several pros and cons. The pros of strongly typed objects and shorter code compared to the equivalent SQL kept me from going back to using SqlCommand directly. However, I met another cons of Entity Framework today — that is the lack of support for DateTime.DayOfWeek.  I have a table [Booking] with a column [StartDateTime]. Using the following code results in an error. var </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/1934538466643915461/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=1934538466643915461' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1934538466643915461'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1934538466643915461'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2011/12/getting-dayofweek-in-linq-to-entities.html' title='Getting the DayOfWeek in Linq to Entities'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-8249245624895898031</id><published>2011-11-22T10:20:00.001+08:00</published><updated>2011-11-22T10:20:14.912+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><title type='text'>Enkompass 11.30 unfit for ASP.NET hosting</title><summary type='text'>After facing various issues with Enkompass, I’m giving up on it and moving to Plesk. I shall document the issues to remind myself not to go back to Enkompass until the issues are resolved. Hopefully, this also serves as a guide to those evaluating whether Enkompass caters to their needs.     Enkompass supports only one ASP.NET application. There is no way to configure virtual directories or new </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/8249245624895898031/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=8249245624895898031' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8249245624895898031'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8249245624895898031'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2011/11/after-facing-various-issues-with.html' title='Enkompass 11.30 unfit for ASP.NET hosting'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-3002367135845623926</id><published>2011-05-10T21:02:00.001+08:00</published><updated>2011-05-10T21:02:42.834+08:00</updated><title type='text'>Recovering DotNetNuke Host menu after unchecking Include in Menu</title><summary type='text'>The Admin and Host pages in DotNetNuke can be hidden from the menu, just like other pages. However, a bug in DotNetNuke causes the Host page to lose its connection to its subpages. Luckily, it is reversible, as mentioned in http://www.dnncreative.com/Forum/tabid/88/aft/31023/Default.aspx. Just type the following UPDATE {databaseOwner}[{objectQualifier}Tabs] SET PortalID = NULL WHERE TabID = 7   </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/3002367135845623926/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=3002367135845623926' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3002367135845623926'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3002367135845623926'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2011/05/recovering-dotnetnuke-host-menu-after.html' title='Recovering DotNetNuke Host menu after unchecking Include in Menu'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-3979859978151002067</id><published>2011-04-20T12:15:00.001+08:00</published><updated>2011-04-20T12:15:59.367+08:00</updated><title type='text'>Prevent getting disconnected/blocked from school network when running virtual machine</title><summary type='text'>In Nanyang Technological University’s (NTU) Local Area Network (LAN), whenever one plugs a personal router into a LAN port, the port will be blocked for 10 minutes. If the router is still present after 10 minutes, it gets blocked again. This is probably to ensure that nobody connects a wireless router/access point and turn the non-password secured physical port into a wireless one.  However, this</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/3979859978151002067/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=3979859978151002067' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3979859978151002067'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3979859978151002067'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2011/04/prevent-getting-disconnectedblocked.html' title='Prevent getting disconnected/blocked from school network when running virtual machine'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-4577731593681860606</id><published>2011-02-27T14:45:00.001+08:00</published><updated>2011-02-27T14:45:20.338+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><title type='text'>Bing Maps 7 API bug in MouseEventArgs.getX and getY</title><summary type='text'>The new Bing Maps is a lot more lightweight, and the changes in event handling makes more sense. For example, it is now possible to detect viewchangeend event instead of using an assortment of onendpan, timers and getCenter to detect whether the view has changed.  However, I ran into the same problem mentioned here http://www.ms-windows.info/Help/map-control-v7-mouse-wheel-double-29660.aspx. The </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/4577731593681860606/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=4577731593681860606' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4577731593681860606'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4577731593681860606'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2011/02/bing-maps-7-api-bug-in.html' title='Bing Maps 7 API bug in MouseEventArgs.getX and getY'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-8320143453491512659</id><published>2011-02-08T09:19:00.001+08:00</published><updated>2011-02-08T09:19:25.748+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Facebook'/><title type='text'>Oddities of Facebook events API</title><summary type='text'>Using the the Graph API of https://graph.facebook.com/[userId]/events, one can retrieve the events that the user is attending. The same applies to page, using https://graph.facebook.com/[pageId]/events. However, what does it mean by the event attended by a page? It is not the same as the events created by the page, as the API returns less results that what you would see in the events tab of the </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/8320143453491512659/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=8320143453491512659' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8320143453491512659'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8320143453491512659'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2011/02/oddities-of-facebook-events-api.html' title='Oddities of Facebook events API'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-4873752668077529515</id><published>2011-02-07T23:55:00.001+08:00</published><updated>2011-02-07T23:55:19.750+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Facebook'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Oddities of Facebook event date/time</title><summary type='text'>Facebook is very popular globally, crossing several time zones. Yet to my surprise, it has no concept of time zones. Quote from the Legacy REST API     Note that the start_time and end_time are the times that were inputted by the event creator. Facebook Events have no concept of timezone, so, in general, you can should not treat the value returned as occurring at any particular absolute time. </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/4873752668077529515/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=4873752668077529515' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4873752668077529515'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4873752668077529515'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2011/02/oddities-of-facebook-event-datetime.html' title='Oddities of Facebook event date/time'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-8385687353205304166</id><published>2010-10-18T16:27:00.001+08:00</published><updated>2010-10-18T16:27:08.865+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='PDF'/><category scheme='http://www.blogger.com/atom/ns#' term='DjVu'/><title type='text'>A comparison of DjVu and JPEG2000 in PDF</title><summary type='text'>Some time ago, I stumbled upon DjVu, a document archiving format. I have previously scanned several printed documents into JPEG and compiled them in ZIP archive. The method is sub-optimal,  producing large JPEG files and creating non-viewable files, unless uncompressed. Placing the JPEG files in PDF, while making it viewable, increases the file size further.  DjVu presented a much better </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/8385687353205304166/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=8385687353205304166' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8385687353205304166'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8385687353205304166'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2010/10/comparison-of-djvu-and-jpeg2000-in-pdf.html' title='A comparison of DjVu and JPEG2000 in PDF'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-4148605331704459922</id><published>2010-09-03T22:41:00.001+08:00</published><updated>2010-09-03T22:41:27.476+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='Office'/><title type='text'>Downloading Facebook Profile Pictures to Outlook Contacts</title><summary type='text'>Microsoft Office 2010 introduced the Social Connectors. With the Facebook Connector, emails now come with faces, thanks to the connector downloading profile pictures from Facebook. Opening contact items shows faces as well.  The next logical step is to use that contact item’s profile picture as the business card picture. However, no matter how I click-and-drag the picture over to the placeholder,</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/4148605331704459922/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=4148605331704459922' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4148605331704459922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4148605331704459922'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2010/09/downloading-facebook-profile-pictures.html' title='Downloading Facebook Profile Pictures to Outlook Contacts'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-8367536904125937620</id><published>2010-08-30T11:07:00.001+08:00</published><updated>2010-08-30T11:07:44.673+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Restoring Windows 7 Image Backup to any partition</title><summary type='text'>With my C: running out of space, I deleted the recovery partition on my hard disk. However, as the recovery partition occupied the space before C:, Windows was unable to expand C: to take the space. To move C:, I used GParted Live USB. However, GParted only created the partition, totally wrecking the data and Windows can no longer boot (WinRE cannot even recognize that I had Windows 7 installed).</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/8367536904125937620/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=8367536904125937620' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8367536904125937620'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8367536904125937620'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2010/08/restoring-windows-7-image-backup-to-any.html' title='Restoring Windows 7 Image Backup to any partition'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-3161445739749108128</id><published>2010-03-29T09:20:00.001+08:00</published><updated>2010-03-29T09:20:35.379+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Red Black Tree Tutorial</title><summary type='text'>On examining the red black tree used for the SortedDictionary class, I realized Microsoft did not use any recursion for insertion and deletion. This seems weird, because I have never come across a top-down tree balancing method. Then I found the Eternally Confuzzled - Red Black Tree Tutorial, which clearly explains how it is done. Thanks Julienne!  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/3161445739749108128/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=3161445739749108128' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3161445739749108128'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3161445739749108128'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2010/03/red-black-tree-tutorial.html' title='Red Black Tree Tutorial'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-1809352020739629051</id><published>2010-03-28T12:44:00.001+08:00</published><updated>2010-04-26T00:24:43.260+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Runtime Complexity of .NET Generic Collection</title><summary type='text'>I had to implement some data structures for my computational geometry class. Deciding whether to implement the data structures myself or using the build-in classes turned out to be a hard decision, as the runtime complexity information is located at the method itself, if present at all. So I went ahead to consolidate all the information in one table, then looked at the source code in Reflector </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/1809352020739629051/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=1809352020739629051' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1809352020739629051'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1809352020739629051'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2010/03/runtime-complexity-of-net-generic.html' title='Runtime Complexity of .NET Generic Collection'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-5769446272394550362</id><published>2009-10-10T22:54:00.001+08:00</published><updated>2009-10-10T22:54:18.453+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><title type='text'>Programmers are Tiny Gods</title><summary type='text'>Derek Powazek says Programmers are Tiny Gods. Maybe this explains why some people call me god? =P  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/5769446272394550362/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=5769446272394550362' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5769446272394550362'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5769446272394550362'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/10/programmers-are-tiny-gods.html' title='Programmers are Tiny Gods'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-7891134205618110069</id><published>2009-10-10T20:55:00.003+08:00</published><updated>2009-10-10T21:13:48.833+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Rasterizing a vector brush for fast scaling animation</title><summary type='text'>When animating (scaling) a complex WPF vector brush, 100% of my CPU is used. The animation also looks jerky. To speed things up, I rasterized the vector brush into a bitmap brush. The CPU load decreases below 30% and the animation became much smoother.  So how do I create a bitmap brush? There is no meaningful properties or methods to override in the Brush class, as most of the workings of brush </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/7891134205618110069/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=7891134205618110069' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/7891134205618110069'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/7891134205618110069'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/10/rasterizing-vector-brush-for-fast.html' title='Rasterizing a vector brush for fast scaling animation'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-4770798514066965158</id><published>2009-09-23T21:02:00.001+08:00</published><updated>2009-10-10T13:54:57.544+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Creating Shortcut to Application Inside Windows XP Mode</title><summary type='text'>The easiest way to get a Windows 7 shortcut to an application inside XP Mode is to load up the Virtual Machine and within the guest Windows XP, create a shortcut in C:\Documents and Settings\All Users\Start Menu.  This method can be used to create shortcut for Internet Explorer 6 and Outlook Express. However, when I use the same method to create a shortcut to Pinball Space Cadet, the Windows 7 </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/4770798514066965158/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=4770798514066965158' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4770798514066965158'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4770798514066965158'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/09/creating-shortcut-to-application-inside.html' title='Creating Shortcut to Application Inside Windows XP Mode'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_O4rdejjpgJ4/SrjK4abUatI/AAAAAAAAAHQ/sbiKtDowXkk/s72-c/image%5B26%5D.png?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-2195083205195512722</id><published>2009-09-22T17:38:00.001+08:00</published><updated>2009-09-22T17:38:56.200+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='Office'/><title type='text'>Office 2010 CTP compatibility with Nokia PC Suite and Visual Studio 2008</title><summary type='text'>I use the Nokia PC Sync feature to get my handphone calendar and Outlook calendar in sync.  A clean install of Windows 7 Professional, Office 2010 64-bit edition and Nokia PC Suite 7.1.30.9 didn’t work out well—the PC Sync could not detect Outlook and thus cannot synchronize.  Apparently, Nokia PC Sync can only detect the 32-bit version of Office 2010. So I uninstalled the 64-bit version and </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/2195083205195512722/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=2195083205195512722' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/2195083205195512722'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/2195083205195512722'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/09/office-2010-ctp-compatibility-with.html' title='Office 2010 CTP compatibility with Nokia PC Suite and Visual Studio 2008'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-678064693617294357</id><published>2009-09-21T23:16:00.005+08:00</published><updated>2010-04-26T00:38:25.163+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='Tablet PC'/><title type='text'>Getting Chinese Handwriting Recognition on Windows 7 Professional</title><summary type='text'>Installing Language Pack  To have Chinese Handwriting Recognition, the Chinese Language Pack needs to be installed. According to Microsoft Help and Support, Windows 7 language packs are available for computers that are running Windows 7 Ultimate. Implicitly, it means that other editions of Windows do not have language packs.  To verify that, the instruction from Windows 7 Center showed the </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/678064693617294357/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=678064693617294357' title='3 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/678064693617294357'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/678064693617294357'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/09/getting-chinese-handwriting-recognition.html' title='Getting Chinese Handwriting Recognition on Windows 7 Professional'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://lh6.ggpht.com/_O4rdejjpgJ4/SreYngO0DmI/AAAAAAAAAF8/ts5HXl44bPA/s72-c/image_thumb%5B51%5D.png?imgmax=800' height='72' width='72'/><thr:total>3</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-5143166692171258101</id><published>2009-07-01T22:11:00.000+08:00</published><updated>2009-07-01T22:20:26.458+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Virtual Box Seamless Mode</title><summary type='text'>
   Just discovered Virtual Box had seamless mode. Virtual PC has a lot to catch up! The latest version with seamless mode is still in beta… Here, I’m running Fedora 11 in virtual machine, sharing the same desktop as Windows 7 RC. Cool, isn’t it?  Some minor problems though. All the Linux applications, including the panels, appear as a window on Windows, so clicking on any Linux app will bring </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/5143166692171258101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=5143166692171258101' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5143166692171258101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5143166692171258101'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/07/virtual-box-seamless-mode.html' title='Virtual Box Seamless Mode'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_O4rdejjpgJ4/SktwPzk91cI/AAAAAAAAAEE/8pcvaATm5G8/s72-c/Seamless+Mode.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-5900604117282210644</id><published>2009-06-29T20:53:00.002+08:00</published><updated>2009-06-29T21:00:52.345+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>LUA bug for Windows 7 XP Mode setup</title><summary type='text'>There are 2 files that need to be installed for XP mode. Installation of Windows6.1-KB958559-x64.msu went OK, but VirtualWindowsXP.msi gave an error – your administrator prevented the installation.  To install correctly, I had to Shift+Right Click on the VirtualWindowsXP.msi, and click Run as a different user.     Once it is installed, clicking on Start&gt;Programs&gt;Windows Virtual PC&gt;Virtual Windows</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/5900604117282210644/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=5900604117282210644' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5900604117282210644'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5900604117282210644'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/06/lua-bug-for-windows-7-xp-mode-setup.html' title='LUA bug for Windows 7 XP Mode setup'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_O4rdejjpgJ4/Ski5tT_HXHI/AAAAAAAAADk/wwTHhWn5UjI/s72-c/Run+as.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-5162228345094102995</id><published>2009-06-23T16:00:00.001+08:00</published><updated>2009-06-23T16:00:08.997+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>ASP.NET Label with DropDownList functions to reference another data source</title><summary type='text'>I often encounter the following situation in ASP.NET when using a DetailsView to display a row that contains a reference to a table      &lt;asp:DetailsView ID="detailsView" runat="server" AutoGenerateRows="False"        DataSourceID="dataSource" DataKeyNames="Id"&gt;        &lt;Fields&gt;            &lt;asp:TemplateField HeaderText="Name" SortExpression="Id"&gt;                &lt;EditItemTemplate&gt;</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/5162228345094102995/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=5162228345094102995' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5162228345094102995'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5162228345094102995'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/06/aspnet-label-with-dropdownlist.html' title='ASP.NET Label with DropDownList functions to reference another data source'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-8343568156804387873</id><published>2009-06-21T22:51:00.001+08:00</published><updated>2009-06-21T22:51:55.371+08:00</updated><title type='text'>10 Useful Firefox Extensions to Supercharge Firebug</title><summary type='text'>I often find Firebug lacking in certain areas, such as finding where a certain html tag is used. Jacob Gube came out with a list of add ons for Firebug (which itself is a Firefox add on), that I find very useful.  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/8343568156804387873/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=8343568156804387873' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8343568156804387873'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8343568156804387873'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/06/10-useful-firefox-extensions-to.html' title='10 Useful Firefox Extensions to Supercharge Firebug'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-7912761161275586119</id><published>2009-05-20T23:26:00.002+08:00</published><updated>2009-05-20T23:30:06.342+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><title type='text'>To support long file name (&gt;260 char), get a wider (&gt;260 columns across) monitor</title><summary type='text'>

Though Windows Explorer has gotten flasher with each version of Windows, it still stumbles on the long file name that NTFS supports…</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/7912761161275586119/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=7912761161275586119' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/7912761161275586119'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/7912761161275586119'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/05/to-support-long-file-name-260-char-get.html' title='To support long file name (&gt;260 char), get a wider (&gt;260 columns across) monitor'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_O4rdejjpgJ4/ShQhjM5XkhI/AAAAAAAAADc/OFdkfRX7TSc/s72-c/Long+Filename.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-1926948153663375925</id><published>2009-05-17T18:00:00.001+08:00</published><updated>2009-05-17T18:00:47.277+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Interop'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>WinForms cue/prompt/watermark/placeholder TextBox and other controls</title><summary type='text'>I thought writing the placeholder text box was much easier in WPF than WinForms, since WPF allows graphical elements to be overlaid easily. I was wrong! For WinForms, a P/Invoke can achieve that function since XP and Vista had it built-in. Thanks to Aaron for the source.  Aaron Lerch » Blog Archive » Watermarked edit controls  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/1926948153663375925/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=1926948153663375925' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1926948153663375925'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1926948153663375925'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/05/winforms-cuepromptwatermarkplaceholder.html' title='WinForms cue/prompt/watermark/placeholder TextBox and other controls'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-6442734132759219219</id><published>2009-05-03T12:58:00.001+08:00</published><updated>2009-05-03T12:58:12.151+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='JavaScript'/><title type='text'>The “Coolest” DHTML Calendar</title><summary type='text'>Searching for a JavaScript calendar returned a lot of results. However, most calendar implementations out there are buggy. They are also written in the old JavaScript ways without all the prototyping stuff, causing conflicts with my own variables and functions.  After trying out some of the calendars, I found this calendar to be the best—stable, prototyped and has few side-effects. Only worry is </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/6442734132759219219/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=6442734132759219219' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6442734132759219219'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6442734132759219219'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/05/coolest-dhtml-calendar.html' title='The “Coolest” DHTML Calendar'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-8895258218303110056</id><published>2009-04-28T23:29:00.001+08:00</published><updated>2009-04-28T23:29:23.761+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Start Menu - Enable Folder and Library Pin to Start Menu</title><summary type='text'> Dragging the Computer link in the start menu to the Pin area creates a pin for Computer. However, while it is easy to pin, it is impossible to remove! Luckily, by just adding a new registry key, the context menu will show the “Unpin from Start Menu” item.  Instructions at Start Menu - Enable Folder and Library Pin to Start Menu - Windows 7 Forums  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/8895258218303110056/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=8895258218303110056' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8895258218303110056'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8895258218303110056'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/04/start-menu-enable-folder-and-library.html' title='Start Menu - Enable Folder and Library Pin to Start Menu'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-4892935083497064959</id><published>2009-04-23T15:44:00.001+08:00</published><updated>2009-04-23T15:49:01.876+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Why no more 16-bit support in Windows 64-bit?</title><summary type='text'>It seems kind of weird that Microsoft removed support for running 16-bit programs on 64-bit Windows. Even in Windows 7 32-bit, 16-bit programs are still supported. How different can the code be? Why is the 32-bit version written but not ported to 64-bit?  The following article explains why  Virtual 8086 mode  It is AMD and Intel who removed support for 16-bit on 64-bit. Code for 16-bit support on</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/4892935083497064959/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=4892935083497064959' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4892935083497064959'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4892935083497064959'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/04/why-no-more-16-bit-support-in-windows.html' title='Why no more 16-bit support in Windows 64-bit?'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-8998413098245207968</id><published>2009-04-21T16:37:00.001+08:00</published><updated>2009-04-21T16:37:35.759+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Confused by news titles</title><summary type='text'>Windows: 'Life Without Walls'  Microsoft: Walls will become computers of the future  So are there Walls or no Walls?  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/8998413098245207968/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=8998413098245207968' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8998413098245207968'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/8998413098245207968'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/04/confused-by-news-titles.html' title='Confused by news titles'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-5150695516453231685</id><published>2009-04-04T21:32:00.001+08:00</published><updated>2009-04-04T21:32:18.446+08:00</updated><title type='text'>Ten Ways to Ensure RIA Failure - MIX Videos</title><summary type='text'>How to make a project fail.   Ten Ways to Ensure RIA Failure - MIX Videos  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/5150695516453231685/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=5150695516453231685' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5150695516453231685'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5150695516453231685'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/04/ten-ways-to-ensure-ria-failure-mix.html' title='Ten Ways to Ensure RIA Failure - MIX Videos'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-3563447009647278792</id><published>2009-03-21T19:01:00.001+08:00</published><updated>2009-03-21T21:40:06.034+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Mod your Visual Studio Professional</title><summary type='text'>Here's my list of developer tools for Visual Studio Professional. Dreamspark only provides Professional Edition, so I'll be listing the   alternatives for the missing features that are only available for Team Foundation. All software listed are free unless otherwise stated.  Client-side  Code templates and refactoring     SlickEdit Gadgets generates methods to retrieve data from clipboard, </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/3563447009647278792/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=3563447009647278792' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3563447009647278792'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3563447009647278792'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/03/mod-your-visual-studio-professional.html' title='Mod your Visual Studio Professional'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-3977758554691764330</id><published>2009-03-20T21:31:00.001+08:00</published><updated>2009-03-20T21:31:28.662+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='CSS'/><title type='text'>CSS Centering: Auto-width Margins</title><summary type='text'> &lt;div align=”center”&gt; has been deprecated in XHTML 1.1. Replacing it with &lt;div style=”text-align:center”&gt; did not work.  The correct replacement is &lt;div style=”width;1000px; margin:0 auto”&gt; on the child element and a text-align:center on the parent element. Credit to CSS Centering: Auto-width Margins for example.  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/3977758554691764330/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=3977758554691764330' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3977758554691764330'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/3977758554691764330'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/03/css-centering-auto-width-margins.html' title='CSS Centering: Auto-width Margins'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-1932680472829536590</id><published>2009-03-11T09:21:00.001+08:00</published><updated>2009-03-11T09:21:46.159+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Windows 7 and Life Without Walls</title><summary type='text'> A demonstration of web and networking functionalities in Windows 7.  RAZORTV - R.age: The Bonus Stage (Pt 2)  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/1932680472829536590/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=1932680472829536590' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1932680472829536590'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1932680472829536590'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/03/windows-7-and-life-without-walls.html' title='Windows 7 and Life Without Walls'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-1385265884375041114</id><published>2009-02-23T22:59:00.001+08:00</published><updated>2009-02-23T22:59:25.019+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='ASP.NET'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>ASP.NET Supervising Controller (Model View Presenter) From Schematic To Unit Tests to Code</title><summary type='text'>A very practical way of implementing MVP for ASP.NET:   ASP.NET Supervising Controller (Model View Presenter) From Schematic To Unit Tests to Code  </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/1385265884375041114/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=1385265884375041114' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1385265884375041114'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1385265884375041114'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/02/aspnet-supervising-controller-model.html' title='ASP.NET Supervising Controller (Model View Presenter) From Schematic To Unit Tests to Code'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-7094763785253801100</id><published>2009-01-20T21:29:00.001+08:00</published><updated>2009-01-20T21:29:56.358+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Windows'/><title type='text'>Useful blogs about installing Windows 7 Beta 1</title><summary type='text'>Download site
http://www.mydigitallife.info/2009/01/10/windows-7-beta-official-direct-download-links/
http://www.mydigitallife.info/2008/12/27/windows-7-beta-1-build-7000-dvd-iso-image-torrent-and-namipan-download/

Getting a product key
http://www.mydigitallife.info/2009/01/10/hack-to-get-windows-7-beta-product-key-instantly/

Installing Windows 7 on a VHD and coexisting with other OS.
http://</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/7094763785253801100/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=7094763785253801100' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/7094763785253801100'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/7094763785253801100'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/01/useful-blogs-about-installing-windows-7.html' title='Useful blogs about installing Windows 7 Beta 1'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-7148043446095547491</id><published>2009-01-17T23:05:00.017+08:00</published><updated>2009-01-18T20:10:11.565+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tablet PC'/><title type='text'>Fujitsu T5010 Drivers for Windows 7 64-bit</title><summary type='text'>While Fujitsu does not officially support Windows Vista or Windows 7 64-bit, there are already drivers available for most devices. Here are what I have found.

Agere Systems HDA Modem - 2.1.87
http://www.versiontracker.com/dyn/moreinfo/win/163452

Wacom Penabled Tablet
http://www.wacom.com/tabletpc/driver.cfm

Intel GM45 Chipset INF Update Utility - Zip Format
http://downloadcenter.intel.com/</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/7148043446095547491/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=7148043446095547491' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/7148043446095547491'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/7148043446095547491'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/01/fujitsu-t5010-drivers-for-windows-7-64.html' title='Fujitsu T5010 Drivers for Windows 7 64-bit'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_O4rdejjpgJ4/SXMbiePj5WI/AAAAAAAAACk/Oqr6wcKST_k/s72-c/Device+Manager+1.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-5776972450953147009</id><published>2009-01-06T23:02:00.002+08:00</published><updated>2009-01-06T23:12:30.110+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>How to recover from an accidental deletion of linux boot partition (Part 3 of 3)</title><summary type='text'>Again, life didn't go so smoothly.

Before resorting to using VirtualBox to recreate the files in the boot partition, I chose the Install or Upgrade option of the Fedora DVD.

I tried to do an upgrade on the existing partition, namely /dev/VolGroup00/LogVol00.
The installation failed with an exception thrown.

Then I resorted to VirtualBox and doing everything in Part 2.
Upon rebooting, all went </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/5776972450953147009/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=5776972450953147009' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5776972450953147009'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5776972450953147009'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/01/how-to-recover-from-accidental-deletion_9984.html' title='How to recover from an accidental deletion of linux boot partition (Part 3 of 3)'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-6918657455937076252</id><published>2009-01-06T22:59:00.004+08:00</published><updated>2009-01-06T23:35:03.510+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>How to recover from an accidental deletion of linux boot partition (Part 2 of 3)</title><summary type='text'>Continuing from the previous post.

Everything would have been up and running again if I had did exactly as said in the previous post.

However, I did an extra step. As suggested in forums, to create a partition, I would first fdisk and then mkfs.ext3. So I went to type this instead. sda7 is the newly created partition.

#fdisk /dev/sda
n
p
1
&lt;enter&gt;
&lt;enter&gt;
w

#mkfs.ext3 /dev/sda7
#reboot

Again</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/6918657455937076252/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=6918657455937076252' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6918657455937076252'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6918657455937076252'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/01/how-to-recover-from-accidental-deletion_601.html' title='How to recover from an accidental deletion of linux boot partition (Part 2 of 3)'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-4267654122722715922</id><published>2009-01-06T20:25:00.013+08:00</published><updated>2009-01-06T23:35:51.902+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Linux'/><title type='text'>How to recover from an accidental deletion of linux boot partition (Part 1 of 3)</title><summary type='text'>Being new to Linux, I made a big mistake in deleting the boot partition. The story goes like this.

A hard disk supports at most 4 partitions. I had Windows Vista and Fedora 10 installed. My system has 2 partitions taken up by the system recovery image.

Windows Vista's Disk Management reports the partitions as follows


6 partitions? Hmm, I thought it could have been that the recovery partitions</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/4267654122722715922/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=4267654122722715922' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4267654122722715922'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4267654122722715922'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2009/01/how-to-recover-from-accidental-deletion.html' title='How to recover from an accidental deletion of linux boot partition (Part 1 of 3)'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://3.bp.blogspot.com/_O4rdejjpgJ4/SWNWw0V6AEI/AAAAAAAAAB0/TKUT_8I3ZbQ/s72-c/Disk+Management.png' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-1652570176626492714</id><published>2008-10-25T21:43:00.003+08:00</published><updated>2008-10-25T22:02:08.316+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Placeholder text using Adorner, improved</title><summary type='text'>Previously, my adorner only supports TextBox, RichTextBox and PasswordBox. I found it limiting, as there are so many controls out there that supports editing text.

One such case is the ComboBox with the IsEditable property set to true. After trying to add a new code brunch to support the case of ComboBox, I bumped into a wall. The IsFocused property of ComboBox is not reporting the right thing! </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/1652570176626492714/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=1652570176626492714' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1652570176626492714'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/1652570176626492714'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2008/10/placeholder-text-using-adorner-improved.html' title='Placeholder text using Adorner, improved'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-4961260778563395055</id><published>2008-10-04T20:31:00.004+08:00</published><updated>2008-10-25T22:05:24.286+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Radial Panel</title><summary type='text'>In Applications = Code + Markup: A Guide To The Microsoft Windows Presentation Foundation, Charles Petzold showed us how to create a radial panel. A radial panel presents its children elements around the circumference of a circle.

While good, the code did not address the case when there is only 1 child, causing it to behave oddly. There are also some bugs in painting the pie lines, with the </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/4961260778563395055/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=4961260778563395055' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4961260778563395055'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/4961260778563395055'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2008/10/radial-panel.html' title='Radial Panel'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-6511090003034625370</id><published>2008-08-12T19:03:00.011+08:00</published><updated>2009-01-18T14:13:00.401+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Tablet PC'/><title type='text'>Fujitsu T5010 Tablet PC</title><summary type='text'>
Got my hands on the brand new, not in the market T5010! Designed as a successor to T4220, the T5010 comes with a Centrino 2 chipset and a processor from the P family.

The Centrino 2 chipset features a faster integrated graphics (Intel GMA X4500HD) and support for Wi-Fi a/g/n. The P family of processors is the newest from Intel, consuming less power than the T series of processors. Mine comes </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/6511090003034625370/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=6511090003034625370' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6511090003034625370'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6511090003034625370'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2008/08/fujitsu-t5010-tablet-pc.html' title='Fujitsu T5010 Tablet PC'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://1.bp.blogspot.com/_O4rdejjpgJ4/SKFyftTDQaI/AAAAAAAAAAc/oThZAT0Ko1w/s72-c/DSCF0005.JPG' height='72' width='72'/><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-6426325232855352743</id><published>2008-01-13T18:17:00.006+08:00</published><updated>2008-10-25T22:20:38.930+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Placeholder text using Adorner</title><summary type='text'>In the previous post, I subclassed TextBox in order to introduce a placeholder text. I realised that there is a better way - one that allows me to use only 1 class to add placeholder text to a TextBox, RichTextBox and PasswordBox - and that is using an adorner.To use it in xaml, simply addxmlns:src="clr-namespace:Huan.WhiteDwarf.UI"to the root element, e.g. Window, and addsrc:Placeholder.Text="</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/6426325232855352743/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=6426325232855352743' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6426325232855352743'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6426325232855352743'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2008/01/placeholder-text-using-adorner.html' title='Placeholder text using Adorner'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><media:thumbnail xmlns:media='http://search.yahoo.com/mrss/' url='http://2.bp.blogspot.com/_O4rdejjpgJ4/R4noRhqM-0I/AAAAAAAAAAM/os3yPnmozRY/s72-c/Placeholder.png' height='72' width='72'/><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-2956805180737539921</id><published>2007-12-28T18:47:00.001+08:00</published><updated>2008-10-25T22:25:59.090+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>TextBox with Placeholder Text</title><summary type='text'>After seeking high and low for a WPF TextBox that will display placeholder text when the text is empty and has no focus, I came across allsorts46's implementation for WinForms. I cannot find a WPF version, so I seek to implement one that intercepts TextBox.OnRender event to draw the placeholder text.

However, when drawing text in the OnRender event, the text always appears behind the textbox, </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/2956805180737539921/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=2956805180737539921' title='2 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/2956805180737539921'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/2956805180737539921'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2007/12/textbox-with-placeholder-text.html' title='TextBox with Placeholder Text'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>2</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-5175755362718867916</id><published>2007-06-18T21:13:00.003+08:00</published><updated>2008-10-26T22:20:52.515+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='WPF'/><category scheme='http://www.blogger.com/atom/ns#' term='Interop'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>WPF Interop with ExceptionMessageBox</title><summary type='text'>Update: Apparently there is a better way to do it, as explained at IEnumerable&lt;Stuff&gt;

I've been porting part of a Windows Forms project to Windows Presentation Foundation. I've been using ExceptionMessageBox to show error messages. Its Show method takes an IWin32Window argument. However, WPF forms does not implement the IWin32Window, so there is no way to directly pass System.Windows.Window into</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/5175755362718867916/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=5175755362718867916' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5175755362718867916'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/5175755362718867916'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2007/06/wpf-interop-with-exceptionmessagebox.html' title='WPF Interop with ExceptionMessageBox'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-2312612870632538101</id><published>2007-06-07T18:17:00.001+08:00</published><updated>2008-10-25T22:28:33.466+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Setup and Deployment'/><title type='text'>Bootstrapper for MS SQL Server 2005 Express SP2</title><summary type='text'>While trying to find out why Visual Studio 2005 Setup and Deployment Project fails to compile when I added MS SQL Server 2005 Express as the prerequisite, I came across SQL Server 2005 SP2 has been released and Bootstrapper for SQL Server 2005 Express Edition Service Pack 2. In the former article, Mike, developer for the SQL Server 2005 Express, said that his team is going to release a </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/2312612870632538101/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=2312612870632538101' title='1 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/2312612870632538101'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/2312612870632538101'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2007/06/bootstrapper-for-ms-sql-server-2005.html' title='Bootstrapper for MS SQL Server 2005 Express SP2'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>1</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-6317544837245064332</id><published>2007-04-06T17:59:00.000+08:00</published><updated>2007-04-06T18:20:31.117+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><title type='text'>Windows usability dropping</title><summary type='text'>Windows Vista, Office 2007 and IE 7 all had their user interface revamped. However, I find the new interface harder to use.

In Vista, the Start button is gone. The button had been named Start so as to let new computer users know what to do after they switched the computer on. I had tried Fedora Core 2 before. The first time I started it up, I was lost on how do launch programs. There is no Start</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/6317544837245064332/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=6317544837245064332' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6317544837245064332'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/6317544837245064332'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2007/04/windows-usability-dropping.html' title='Windows usability dropping'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-134039235347961746</id><published>2007-03-26T12:24:00.000+08:00</published><updated>2007-03-26T12:35:00.585+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><category scheme='http://www.blogger.com/atom/ns#' term='Printing'/><title type='text'>Printing Documents</title><summary type='text'>There are times when a program needs a printing function. However, the PrintDocument class provided in .NET seems to raw, requiring one to measure of each word in a string, and lay it out on the page. There must be a better way, and after some searches, I found the gem below.

How to print the content of a RichTextBox control by using Visual C# .NET or Visual C# 2005
http://support.microsoft.com/</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/134039235347961746/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=134039235347961746' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/134039235347961746'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/134039235347961746'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2007/03/printing-documents.html' title='Printing Documents'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-610048443116184708</id><published>2007-03-18T23:00:00.000+08:00</published><updated>2007-12-28T21:10:04.311+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='Rant'/><title type='text'>Unpaid to Learn</title><summary type='text'>I am currently working as a freelance programmer. My employer has this policy that he will not pay me for the time taken for me to learn. This might sound reasonable at first, however, as days into the project, I felt an eerie connection with the programmer who is paid per-line-of-code. I could not rationalise such a connection until now.

Programming is a very vast skill set by nature. No matter</summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/610048443116184708/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=610048443116184708' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/610048443116184708'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/610048443116184708'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2007/03/unpaid-to-learn.html' title='Unpaid to Learn'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry><entry><id>tag:blogger.com,1999:blog-38888296.post-117223845754209066</id><published>2007-02-23T21:45:00.000+08:00</published><updated>2007-04-06T17:59:28.195+08:00</updated><category scheme='http://www.blogger.com/atom/ns#' term='XML'/><category scheme='http://www.blogger.com/atom/ns#' term='C#'/><title type='text'>Preparing Dataset for XSLT</title><summary type='text'>To apply XSLT on XML, the xsi namespace needs to be set. This is a way to set the namespace for an XML generated from Dataset.GetXml

string xmlnsNS = "http://www.w3.org/2000/xmlns/";
            string xsiNS = "http://www.w3.org/2001/XMLSchema-instance";
            XmlDataDocument xmlDocument = new XmlDataDocument();
            xmlDocument.LoadXml(ds.GetXml());
            </summary><link rel='replies' type='application/atom+xml' href='http://c-sharp-snippets.blogspot.com/feeds/117223845754209066/comments/default' title='Post Comments'/><link rel='replies' type='text/html' href='http://www.blogger.com/comment.g?blogID=38888296&amp;postID=117223845754209066' title='0 Comments'/><link rel='edit' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/117223845754209066'/><link rel='self' type='application/atom+xml' href='http://www.blogger.com/feeds/38888296/posts/default/117223845754209066'/><link rel='alternate' type='text/html' href='http://c-sharp-snippets.blogspot.com/2007/02/preparing-dataset-xml-for-xslt.html' title='Preparing Dataset for XSLT'/><author><name>Jeow Li Huan</name><uri>http://www.blogger.com/profile/11871374011115309096</uri><email>noreply@blogger.com</email><gd:image rel='http://schemas.google.com/g/2005#thumbnail' width='16' height='16' src='http://img2.blogblog.com/img/b16-rounded.gif'/></author><thr:total>0</thr:total></entry></feed>
