<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>Ilya Verbitskiy</title>
        <link>http://geekswithblogs.net/ilich/Default.aspx</link>
        <description>Digging Deep into Windows</description>
        <language>en-US</language>
        <copyright>Ilya Verbitskiy</copyright>
        <managingEditor>iverbitskiy@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <image>
            <title>Ilya Verbitskiy</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/ilich/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>How to change Windows Store App&amp;rsquo;s Start Page?</title>
            <category>Windows Store</category>
            <link>http://geekswithblogs.net/ilich/archive/2013/05/06/how-to-change-windows-store-apprsquos-start-page.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/ilich/archive/2013/05/06/how-to-change-windows-store-apprsquos-start-page.aspx'&gt;http://geekswithblogs.net/ilich/archive/2013/05/06/how-to-change-windows-store-apprsquos-start-page.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;  &lt;p&gt;Finally I have had a chance to start developing Windows 8 applications. I have started with C#/XAML applications. The reason is obvious: I had done a lot of WPF development in the last three years. I have been surprised how easy it is to start building the applications. I have started with &lt;a href="http://www.amazon.com/Professional-Windows-Programming-Application-Development/dp/1118205707"&gt;Professional Windows 8 Programming: Application Development with C# and XAML&lt;/a&gt; and write the code.&lt;/p&gt;  &lt;p&gt;Today I’d like to show you one trick which is not obvious for Windows 8 beginners. How can you change Windows 8 Apps’ Start Page?&lt;/p&gt;  &lt;p&gt;Let’s create a blank Windows Store Application and show a “Hello Windows 8!” on its Start Screen. Start Screen is MainPage.xaml by default. Open it and add this code.&lt;/p&gt;  &lt;pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  1: &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;Grid&lt;/span&gt; &lt;span style="color: #ff0000"&gt;Background&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"{StaticResource ApplicationPageBackgroundThemeBrush}"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  2:         &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;TextBlock&lt;/span&gt; &lt;span style="color: #ff0000"&gt;Text&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"Hello Windows 8!"&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  3:                    &lt;span style="color: #ff0000"&gt;FontSize&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"40"&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  4:                    &lt;span style="color: #ff0000"&gt;VerticalAlignment&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"Center"&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  5:                    &lt;span style="color: #ff0000"&gt;HorizontalAlignment&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"Center"&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  6: &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;Grid&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;Let’s add another page to the application, e.g. NewStartup.xaml, and show “Hello World!” message there, like this:&lt;/p&gt;

&lt;pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  1: &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;Grid&lt;/span&gt; &lt;span style="color: #ff0000"&gt;Background&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"{StaticResource ApplicationPageBackgroundThemeBrush}"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  2:         &lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;TextBlock&lt;/span&gt; &lt;span style="color: #ff0000"&gt;Text&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"Hello World!"&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  3:                    &lt;span style="color: #ff0000"&gt;FontSize&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"40"&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  4:                    &lt;span style="color: #ff0000"&gt;VerticalAlignment&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"Center"&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  5:                    &lt;span style="color: #ff0000"&gt;HorizontalAlignment&lt;/span&gt;=&lt;span style="color: #0000ff"&gt;"Center"&lt;/span&gt; &lt;span style="color: #0000ff"&gt;/&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  6: &lt;span style="color: #0000ff"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;Grid&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;&lt;/pre&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;Now we can start with the tricky part. All Windows Store Applications have a manifest file &lt;strong&gt;Package.appxmanifest&lt;/strong&gt;. This is the place where you can set you app’s logos, startup image, default language, etc. You can also specify you application capabilities, e.g. access to a web-cam or Internet. But this is another story.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gwb.blob.core.windows.net/ilich/WindowsLiveWriter/HowtochangeWindowsStoreAppsStartPage_14D49/Manifest_4.png"&gt;&lt;img title="Manifest" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Manifest" src="https://gwb.blob.core.windows.net/ilich/WindowsLiveWriter/HowtochangeWindowsStoreAppsStartPage_14D49/Manifest_thumb_1.png" width="644" height="371" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;You can see &lt;strong&gt;Entry point &lt;/strong&gt;value on the screen. This class the class which runs when the app is activated. But it is not the same as you app’s Start Page. Let’s take a look what we have there.&lt;/p&gt;

&lt;pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  1: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; System;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  2: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; System.Collections.Generic;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  3: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; System.IO;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  4: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; System.Linq;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  5: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.ApplicationModel;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  6: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.ApplicationModel.Activation;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  7: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.Foundation;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt;  8: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.Foundation.Collections;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt;  9: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.UI.Xaml;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 10: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.UI.Xaml.Controls;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 11: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.UI.Xaml.Controls.Primitives;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 12: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.UI.Xaml.Data;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 13: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.UI.Xaml.Input;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 14: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.UI.Xaml.Media;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 15: &lt;span style="color: #0000ff"&gt;using&lt;/span&gt; Windows.UI.Xaml.Navigation;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 16: 
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 17: &lt;span style="color: #008000"&gt;// The Blank Application template is documented at http://go.microsoft.com/fwlink/?LinkId=234227&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 18: 
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 19: &lt;span style="color: #0000ff"&gt;namespace&lt;/span&gt; Blog1
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 20: {
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 21:     &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 22:     &lt;span style="color: #808080"&gt;/// Provides application-specific behavior to supplement the default Application class.&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 23:     &lt;span style="color: #808080"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 24:     &lt;span style="color: #0000ff"&gt;sealed&lt;/span&gt; partial &lt;span style="color: #0000ff"&gt;class&lt;/span&gt; App : Application
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 25:     {
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 26:         &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 27:         &lt;span style="color: #808080"&gt;/// Initializes the singleton application object.  This is the first line of authored code&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 28:         &lt;span style="color: #808080"&gt;/// executed, and as such is the logical equivalent of main() or WinMain().&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 29:         &lt;span style="color: #808080"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 30:         &lt;span style="color: #0000ff"&gt;public&lt;/span&gt; App()
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 31:         {
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 32:             &lt;span style="color: #0000ff"&gt;this&lt;/span&gt;.InitializeComponent();
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 33:             &lt;span style="color: #0000ff"&gt;this&lt;/span&gt;.Suspending += OnSuspending;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 34:         }
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 35: 
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 36:         &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 37:         &lt;span style="color: #808080"&gt;/// Invoked when the application is launched normally by the end user.  Other entry points&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 38:         &lt;span style="color: #808080"&gt;/// will be used when the application is launched to open a specific file, to display&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 39:         &lt;span style="color: #808080"&gt;/// search results, and so forth.&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 40:         &lt;span style="color: #808080"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 41:         &lt;span style="color: #808080"&gt;/// &amp;lt;param name="args"&amp;gt;Details about the launch request and process.&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 42:         &lt;span style="color: #0000ff"&gt;protected&lt;/span&gt; &lt;span style="color: #0000ff"&gt;override&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; OnLaunched(LaunchActivatedEventArgs args)
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 43:         {
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 44:             Frame rootFrame = Window.Current.Content &lt;span style="color: #0000ff"&gt;as&lt;/span&gt; Frame;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 45: 
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 46:             &lt;span style="color: #008000"&gt;// Do not repeat app initialization when the Window already has content,&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 47:             &lt;span style="color: #008000"&gt;// just ensure that the window is active&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 48:             &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (rootFrame == &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;)
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 49:             {
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 50:                 &lt;span style="color: #008000"&gt;// Create a Frame to act as the navigation context and navigate to the first page&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 51:                 rootFrame = &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; Frame();
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 52: 
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 53:                 &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (args.PreviousExecutionState == ApplicationExecutionState.Terminated)
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 54:                 {
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 55:                     &lt;span style="color: #008000"&gt;//TODO: Load state from previously suspended application&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 56:                 }
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 57: 
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 58:                 &lt;span style="color: #008000"&gt;// Place the frame in the current Window&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 59:                 Window.Current.Content = rootFrame;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 60:             }
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 61: 
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 62:             &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (rootFrame.Content == &lt;span style="color: #0000ff"&gt;null&lt;/span&gt;)
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 63:             {
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 64:                 &lt;span style="color: #008000"&gt;// When the navigation stack isn't restored navigate to the first page,&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 65:                 &lt;span style="color: #008000"&gt;// configuring the new page by passing required information as a navigation&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 66:                 &lt;span style="color: #008000"&gt;// parameter&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 67:                 &lt;span style="color: #0000ff"&gt;if&lt;/span&gt; (!rootFrame.Navigate(&lt;span style="color: #0000ff"&gt;typeof&lt;/span&gt;(MainPage), args.Arguments))
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 68:                 {
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 69:                     &lt;span style="color: #0000ff"&gt;throw&lt;/span&gt; &lt;span style="color: #0000ff"&gt;new&lt;/span&gt; Exception("&lt;span style="color: #8b0000"&gt;Failed to create initial page&lt;/span&gt;");
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 70:                 }
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 71:             }
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 72:             &lt;span style="color: #008000"&gt;// Ensure the current window is active&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 73:             Window.Current.Activate();
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 74:         }
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 75: 
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 76:         &lt;span style="color: #808080"&gt;/// &amp;lt;summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 77:         &lt;span style="color: #808080"&gt;/// Invoked when application execution is being suspended.  Application state is saved&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 78:         &lt;span style="color: #808080"&gt;/// without knowing whether the application will be terminated or resumed with the contents&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 79:         &lt;span style="color: #808080"&gt;/// of memory still intact.&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 80:         &lt;span style="color: #808080"&gt;/// &amp;lt;/summary&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 81:         &lt;span style="color: #808080"&gt;/// &amp;lt;param name="sender"&amp;gt;The source of the suspend request.&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 82:         &lt;span style="color: #808080"&gt;/// &amp;lt;param name="e"&amp;gt;Details about the suspend request.&amp;lt;/param&amp;gt;&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 83:         &lt;span style="color: #0000ff"&gt;private&lt;/span&gt; &lt;span style="color: #0000ff"&gt;void&lt;/span&gt; OnSuspending(&lt;span style="color: #0000ff"&gt;object&lt;/span&gt; sender, SuspendingEventArgs e)
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 84:         {
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 85:             var deferral = e.SuspendingOperation.GetDeferral();
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 86:             &lt;span style="color: #008000"&gt;//TODO: Save application state and stop any background activity&lt;/span&gt;
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 87:             deferral.Complete();
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 88:         }
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 89:     }
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #ffffff"&gt; 90: }
&lt;/pre&gt;&lt;pre style="font-size: 12px; font-family: consolas,'Courier New',courier,monospace; margin: 0em; width: 100%; background-color: #fbfbfb"&gt; 91: &lt;/pre&gt;&lt;/pre&gt;

&lt;p&gt;This code is automatically generated by Visual Studio 2012. the answer to our questions is in &lt;strong&gt;line 67&lt;/strong&gt;.&lt;/p&gt;

&lt;p&gt;&lt;a href="https://gwb.blob.core.windows.net/ilich/WindowsLiveWriter/HowtochangeWindowsStoreAppsStartPage_14D49/Code_4.png"&gt;&lt;img title="Code" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Code" src="https://gwb.blob.core.windows.net/ilich/WindowsLiveWriter/HowtochangeWindowsStoreAppsStartPage_14D49/Code_thumb_1.png" width="644" height="177" /&gt;&lt;/a&gt; &lt;/p&gt;

&lt;p&gt;Frame.Navigate method accepts you Start Page’s type and show it when you application has started. What you should do now if to change &lt;strong&gt;MainPage&lt;/strong&gt; to &lt;strong&gt;NewStartup&lt;/strong&gt;, save the file and run the application.&lt;/p&gt;

&lt;p&gt;I had been skeptical about Windows 8 as a platform for applications development, but I changed my opinion now. It is great platform and it is really easy to start with. I hope I will have time to write my about my adventures in new Windows world in the future. &lt;/p&gt; &lt;img src="http://geekswithblogs.net/ilich/aggbug/152870.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Ilya Verbitskiy</dc:creator>
            <guid>http://geekswithblogs.net/ilich/archive/2013/05/06/how-to-change-windows-store-apprsquos-start-page.aspx</guid>
            <pubDate>Mon, 06 May 2013 05:15:24 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/ilich/comments/152870.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/ilich/archive/2013/05/06/how-to-change-windows-store-apprsquos-start-page.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/ilich/comments/commentRss/152870.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Recovering unallocated space of a USB flash drive.</title>
            <category>Windows</category>
            <link>http://geekswithblogs.net/ilich/archive/2013/04/26/recovering-unallocated-space-of-a-usb-flash-drive.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/ilich/archive/2013/04/26/recovering-unallocated-space-of-a-usb-flash-drive.aspx'&gt;http://geekswithblogs.net/ilich/archive/2013/04/26/recovering-unallocated-space-of-a-usb-flash-drive.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Today I played with the latest SUSE Linux Live. I had not have a DVD drive and used USB flash drive instead. I wanted to reformat my flash drive, but suddenly found it that it had not been possible. The most of the disk space had been unallocated, and my Windows 8 did not allow me to use it.&lt;/p&gt;  &lt;p&gt;&lt;a href="https://gwb.blob.core.windows.net/ilich/WindowsLiveWriter/RecoveringunallocatedspaceofaUSBflashdr_13990/Unallocated_2.png"&gt;&lt;img title="Unallocated" style="border-left-width: 0px; border-right-width: 0px; border-bottom-width: 0px; display: inline; border-top-width: 0px" border="0" alt="Unallocated" src="https://gwb.blob.core.windows.net/ilich/WindowsLiveWriter/RecoveringunallocatedspaceofaUSBflashdr_13990/Unallocated_thumb.png" width="644" height="462" /&gt;&lt;/a&gt;&lt;/p&gt;  &lt;p&gt;Unfortunately Windows &lt;a href="http://windows.microsoft.com/en-us/windows-vista/fdisk-frequently-asked-questions" target="_blank"&gt;does not support Fdisk anymore&lt;/a&gt;. But there is another good command line tool to solve this problem. The tool’s name is &lt;a href="http://support.microsoft.com/kb/300415" target="_blank"&gt;DiskPart&lt;/a&gt;. I would say it is the next generation of Fdisk tool. DiskPart provides you information about your partitions and volumes, allows you to delete and create partitions, extend NTFS volumes, etc. &lt;/p&gt;  &lt;p&gt;Let’s remove unallocated space. First of all run Windows command line and type &lt;strong&gt;diskpart&lt;/strong&gt; in the command prompt. Windows will ask you for Administrator permissions to run the tool. Then run &lt;strong&gt;list disk&lt;/strong&gt; command to find your USB flash disk’s number. It should be the same as disk’s number in Computer Management tool. It was 1 in my case. Next you should chose the disk to work with. Type &lt;strong&gt;select disk &amp;lt;disk number&amp;gt;&lt;/strong&gt; command, e.g. &lt;strong&gt;select disk 1&lt;/strong&gt;. The next step is to clean all volumes and partitions on the disk. Use &lt;strong&gt;clean&lt;/strong&gt; command to do that. The last step is to create a primary partition. You can do that using &lt;strong&gt;create partition primary&lt;/strong&gt; command. That’s all. You should be able to format your flash disk now.&lt;/p&gt;  &lt;p&gt;This is how I removed unallocated space on my machine:&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;Microsoft DiskPart version 6.2.9200 &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;Copyright (C) 1999-2012 Microsoft Corporation.      &lt;br /&gt;On computer: COMPUTER &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;DISKPART&amp;gt; &lt;strong&gt;list disk &lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;  Disk ###  Status         Size     Free     Dyn  Gpt      &lt;br /&gt;  --------  -------------  -------  -------  ---  ---       &lt;br /&gt;  Disk 0    Online          298 GB      0 B       &lt;br /&gt;&lt;strong&gt;  Disk 1    Online         7509 MB  6619 MB &lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;DISKPART&amp;gt;&lt;strong&gt; select disk 1 &lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;Disk 1 is now the selected disk. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;DISKPART&amp;gt; &lt;strong&gt;clean &lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;DiskPart succeeded in cleaning the disk. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;DISKPART&amp;gt; &lt;strong&gt;create partition primary &lt;/strong&gt;&lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;DiskPart succeeded in creating the specified partition. &lt;/font&gt;&lt;/p&gt;  &lt;p&gt;&lt;font face="Cou"&gt;DISKPART&amp;gt; &lt;strong&gt;exit&lt;/strong&gt;&lt;/font&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/ilich/aggbug/152795.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Ilya Verbitskiy</dc:creator>
            <guid>http://geekswithblogs.net/ilich/archive/2013/04/26/recovering-unallocated-space-of-a-usb-flash-drive.aspx</guid>
            <pubDate>Fri, 26 Apr 2013 03:19:23 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/ilich/comments/152795.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/ilich/archive/2013/04/26/recovering-unallocated-space-of-a-usb-flash-drive.aspx#feedback</comments>
            <slash:comments>11</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/ilich/comments/commentRss/152795.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Using the &amp;lt;base&amp;gt; tag</title>
            <category>Web Development</category>
            <link>http://geekswithblogs.net/ilich/archive/2013/04/21/using-the-ltbasegt-tag.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/ilich/archive/2013/04/21/using-the-ltbasegt-tag.aspx'&gt;http://geekswithblogs.net/ilich/archive/2013/04/21/using-the-ltbasegt-tag.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt; &lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;p&gt;I have an interesting call this morning. One of our customers copy-pasted an email from his email client to our CMS. All links on the page were screwed up, all links on the page had been pointed out to a web-site. The cause of the problem was simple. Email client added the &lt;strong&gt;&amp;lt;base&amp;gt;&lt;/strong&gt; tag to the page to force all links in the email to point out to a third party web-site. It was the first time I had heard about &lt;strong&gt;&amp;lt;base&amp;gt;&lt;/strong&gt; tag.&lt;/p&gt;  &lt;p&gt;The &lt;strong&gt;&amp;lt;base&amp;gt;&lt;/strong&gt; tag is used to specify the base URL to use for all relative URLs contained within a page. It means you can use absolute URLs to avoid the issue I had. The tag has two attributes:&lt;/p&gt;  &lt;p&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;&lt;strong&gt;href&lt;/strong&gt;.&lt;strong&gt; &lt;/strong&gt;The base URL to be used throughout the document for relative URL addresses.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;&lt;/p&gt;  &lt;ul&gt;   &lt;li&gt;     &lt;p&gt;&lt;strong&gt;target&lt;/strong&gt;.&lt;strong&gt; &lt;/strong&gt;A name or keyword indicating the default location to display the result when hyperlinks or forms cause navigation, for elements that do not have an explicit target reference.&lt;/p&gt;   &lt;/li&gt; &lt;/ul&gt;  &lt;p&gt;You may find very good &lt;strong&gt;&amp;lt;base&amp;gt;&lt;/strong&gt; tag definition on &lt;a href="https://developer.mozilla.org/en-US/docs/HTML/Element/base" target="_blank"&gt;Mozilla Developer Network&lt;/a&gt;.&lt;/p&gt;  &lt;p&gt;Let’s see two use cases. First of all, I will use the &lt;strong&gt;&amp;lt;base&amp;gt;&lt;/strong&gt; tag without &lt;strong&gt;target&lt;/strong&gt; attribute.&lt;/p&gt;  &lt;div class="csharpcode"&gt;   &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;!&lt;/span&gt;&lt;span class="html"&gt;DOCTYPE&lt;/span&gt; &lt;span class="attr"&gt;html&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;base&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="http://geekswithblogs.net/ilich/archive/"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;ul&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;li&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="2013/01/22/wpf-how-to-find-control-location.aspx"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;WPF: How to Find Control Location.&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;li&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;li&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="2012/11/10/wpf-timers.aspx"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;WPF: Timers.&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;a&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;li&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;ul&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;html&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[


.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;All links on the page are pointed to &lt;strong&gt;http://geekswithblogs.net/ilich/archive&lt;/strong&gt;. You will open then in the same browser window.&lt;/p&gt;

&lt;p&gt;Now let’s try to use &lt;strong&gt;target _blank&lt;/strong&gt;.&lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;base&lt;/span&gt; &lt;span class="attr"&gt;href&lt;/span&gt;&lt;span class="kwrd"&gt;="http://geekswithblogs.net/ilich/archive/"&lt;/span&gt; &lt;span class="attr"&gt;target&lt;/span&gt;&lt;span class="kwrd"&gt;="_blank"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[


.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt;&lt;/p&gt;

&lt;p&gt;Now you can see the differences. Links pop up in new window.&lt;/p&gt;

&lt;p&gt;There is an obvious question. Should I use this tag? There is an obvious answer to this question. It depends… Personally, I would try to avoid using this tag, because it may overcomplicate page maintenance: all relative links will be pointed out to one absolute location. Usually the latest think what a developer will do, when he sees the bug mentioned above,  is to look for a &lt;strong&gt;&amp;lt;base&amp;gt;&lt;/strong&gt; tag. From the other side, &lt;strong&gt;&amp;lt;base&amp;gt;&lt;/strong&gt; tag might be useful in page templates. You can set the base page location and simplify the rest of links in your template. There are pros and cons, and it is up to you either you will use it or not.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/ilich/aggbug/152758.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Ilya Verbitskiy</dc:creator>
            <guid>http://geekswithblogs.net/ilich/archive/2013/04/21/using-the-ltbasegt-tag.aspx</guid>
            <pubDate>Sun, 21 Apr 2013 15:59:15 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/ilich/comments/152758.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/ilich/archive/2013/04/21/using-the-ltbasegt-tag.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/ilich/comments/commentRss/152758.aspx</wfw:commentRss>
        </item>
        <item>
            <title>WPF: How to Find Control Location.</title>
            <category>WPF</category>
            <link>http://geekswithblogs.net/ilich/archive/2013/01/22/wpf-how-to-find-control-location.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/ilich/archive/2013/01/22/wpf-how-to-find-control-location.aspx'&gt;http://geekswithblogs.net/ilich/archive/2013/01/22/wpf-how-to-find-control-location.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Hello everyone! Unfortunately I do not have enough time for blogging this winter. I hope the situation will change pretty soon, and I will find the time to write something here.&lt;/p&gt;  &lt;p&gt;Anyway. You know that WPF does UI layout itself and usually you should not specify the exact place for your controls. But sometimes you need to know the exact location of the control. Windows Forms solution is easy: just use &lt;a href="msdn.microsoft.com/en-us/library/system.windows.forms.control.location.aspx" target="_blank"&gt;Control.Location&lt;/a&gt; property which returns you the upper-left corner of the control relative to the upper-left corner of its container. You can achieve the same functionality using &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.media.visual.pointtoscreen.aspx" target="_blank"&gt;Visual.PointToScreen&lt;/a&gt; method. It requires one parameter – a Point. The Point is the current coordinates system. It is usually the window’s upper-left corner (0, 0).&lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;div class="csharpcode"&gt;   &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;element.PointToScreen(&lt;span class="kwrd"&gt;new&lt;/span&gt; Point(0, 0));&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[


.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;Let’s create a simple window with a few buttons. Each button will show it’s screens location when use clicks it. This is our Window.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;WrapPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 1&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 2&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 3&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 4&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 5&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 6&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 7&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 8&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 9&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;Button 10&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;WrapPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[


.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;I am using the same &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.uielement.mousedown.aspx" target="_blank"&gt;UIElement.MouseDown&lt;/a&gt; event’s handler for all these buttons. The easiest way to do this is using &lt;a href="http://msdn.microsoft.com/en-us/library/ms597875.aspx" target="_blank"&gt;EventManager.RegisterClassHandler&lt;/a&gt; method. It allows you to register a class handler for a particular routed event. This is the code I have added to the Window’s class constructor.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;EventManager.RegisterClassHandler(&lt;span class="kwrd"&gt;typeof&lt;/span&gt;(Button), MouseDownEvent, &lt;span class="kwrd"&gt;new&lt;/span&gt; RoutedEventHandler(OnMouseDown));&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[


.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;The rest of the application is easy: get a button and show its location.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnMouseDown(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, RoutedEventArgs e)&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;{&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;    var element = sender &lt;span class="kwrd"&gt;as&lt;/span&gt; ContentControl;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;    &lt;span class="kwrd"&gt;if&lt;/span&gt; (element != &lt;span class="kwrd"&gt;null&lt;/span&gt;)&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;    {&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;        ShowLocation(element);&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;    }&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;}&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt; &lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; ShowLocation(ContentControl element)&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;{&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;    var location = element.PointToScreen(&lt;span class="kwrd"&gt;new&lt;/span&gt; Point(0, 0));&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;    MessageBox.Show(&lt;span class="kwrd"&gt;string&lt;/span&gt;.Format(&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;                                    &lt;span class="str"&gt;"{2}'s location is ({0}, {1})"&lt;/span&gt;, &lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;                                    location.X, &lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;                                    location.Y, &lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;                                    element.Content));&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  18:  &lt;/span&gt;}&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;And this is it. You may find the example on &lt;a href="https://github.com/ilich/Examples/tree/master/ControlLocation" target="_blank"&gt;GitHub&lt;/a&gt;.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/ilich/aggbug/151907.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Ilya Verbitskiy</dc:creator>
            <guid>http://geekswithblogs.net/ilich/archive/2013/01/22/wpf-how-to-find-control-location.aspx</guid>
            <pubDate>Tue, 22 Jan 2013 21:37:46 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/ilich/comments/151907.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/ilich/archive/2013/01/22/wpf-how-to-find-control-location.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/ilich/comments/commentRss/151907.aspx</wfw:commentRss>
        </item>
        <item>
            <title>WPF: Running code when Window rendering is completed</title>
            <category>WPF</category>
            <link>http://geekswithblogs.net/ilich/archive/2012/10/16/running-code-when-windows-rendering-is-completed.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/ilich/archive/2012/10/16/running-code-when-windows-rendering-is-completed.aspx'&gt;http://geekswithblogs.net/ilich/archive/2012/10/16/running-code-when-windows-rendering-is-completed.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;WPF is full of surprises. It makes complicated tasks easier, but at the same time overcomplicates easy  task as well. A good example of such overcomplicated things is how to run code when you’re sure that window rendering is completed. Window Loaded event does not always work, because controls might be still rendered. I had this issue working with &lt;a href="http://www.infragistics.com/products/wpf/dock-manager/"&gt;Infragistics XamDockManager&lt;/a&gt;. It continued rendering widgets even when the Window Loaded event had been raised. Unfortunately there is not any “official” solution for this problem.&lt;/p&gt;  &lt;p&gt;But there is a trick. You can execute your code asynchronously using &lt;a href="http://msdn.microsoft.com/en-us/library/ms615907%28v=vs.100%29.aspx"&gt;Dispatcher&lt;/a&gt; class. &lt;/p&gt;  &lt;p&gt; &lt;/p&gt;  &lt;pre class="csharpcode"&gt;Dispatcher.BeginInvoke(&lt;span class="kwrd"&gt;new&lt;/span&gt; Action(() =&amp;gt; Trace.WriteLine(&lt;span class="str"&gt;"DONE!"&lt;/span&gt;, &lt;span class="str"&gt;"Rendering"&lt;/span&gt;)), DispatcherPriority.ContextIdle, &lt;span class="kwrd"&gt;null&lt;/span&gt;);&lt;/pre&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[



.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;This code should be added to your Window Loaded event handler. It is executed when all controls inside your window are rendered.&lt;/p&gt;

&lt;p&gt;I created a small application to prove this idea. The application has one window with a few buttons. Each button logs when it has changed its actual size. It also logs when Window Loaded event is raised, and, finally, when rendering is completed.&lt;/p&gt;

&lt;p&gt;Window’s layout is straightforward.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Window&lt;/span&gt; &lt;span class="attr"&gt;x:Class&lt;/span&gt;&lt;span class="kwrd"&gt;="OnRendered.MainWindow"&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;        &lt;span class="attr"&gt;xmlns&lt;/span&gt;&lt;span class="kwrd"&gt;="http://schemas.microsoft.com/winfx/2006/xaml/presentation"&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;        &lt;span class="attr"&gt;xmlns:x&lt;/span&gt;&lt;span class="kwrd"&gt;="http://schemas.microsoft.com/winfx/2006/xaml"&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;        &lt;span class="attr"&gt;Title&lt;/span&gt;&lt;span class="kwrd"&gt;="Run the code when window rendering is completed."&lt;/span&gt; &lt;span class="attr"&gt;Height&lt;/span&gt;&lt;span class="kwrd"&gt;="350"&lt;/span&gt; &lt;span class="attr"&gt;Width&lt;/span&gt;&lt;span class="kwrd"&gt;="525"&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;        &lt;span class="attr"&gt;Loaded&lt;/span&gt;&lt;span class="kwrd"&gt;="OnWindowLoaded"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Window.Resources&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Style&lt;/span&gt; &lt;span class="attr"&gt;TargetType&lt;/span&gt;&lt;span class="kwrd"&gt;="{x:Type Button}"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   8:  &lt;/span&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setter&lt;/span&gt; &lt;span class="attr"&gt;Property&lt;/span&gt;&lt;span class="kwrd"&gt;="Padding"&lt;/span&gt; &lt;span class="attr"&gt;Value&lt;/span&gt;&lt;span class="kwrd"&gt;="7"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   9:  &lt;/span&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setter&lt;/span&gt; &lt;span class="attr"&gt;Property&lt;/span&gt;&lt;span class="kwrd"&gt;="Margin"&lt;/span&gt; &lt;span class="attr"&gt;Value&lt;/span&gt;&lt;span class="kwrd"&gt;="5"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  10:  &lt;/span&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setter&lt;/span&gt; &lt;span class="attr"&gt;Property&lt;/span&gt;&lt;span class="kwrd"&gt;="HorizontalAlignment"&lt;/span&gt; &lt;span class="attr"&gt;Value&lt;/span&gt;&lt;span class="kwrd"&gt;="Center"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  11:  &lt;/span&gt;            &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Setter&lt;/span&gt; &lt;span class="attr"&gt;Property&lt;/span&gt;&lt;span class="kwrd"&gt;="VerticalAlignment"&lt;/span&gt; &lt;span class="attr"&gt;Value&lt;/span&gt;&lt;span class="kwrd"&gt;="Center"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  12:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Style&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  13:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Window.Resources&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  14:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  15:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="Button1"&lt;/span&gt; &lt;span class="attr"&gt;Content&lt;/span&gt;&lt;span class="kwrd"&gt;="Button 1"&lt;/span&gt; &lt;span class="attr"&gt;SizeChanged&lt;/span&gt;&lt;span class="kwrd"&gt;="OnSizeChanged"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  16:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="Button2"&lt;/span&gt; &lt;span class="attr"&gt;Content&lt;/span&gt;&lt;span class="kwrd"&gt;="Button 2"&lt;/span&gt; &lt;span class="attr"&gt;SizeChanged&lt;/span&gt;&lt;span class="kwrd"&gt;="OnSizeChanged"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  17:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="Button3"&lt;/span&gt; &lt;span class="attr"&gt;Content&lt;/span&gt;&lt;span class="kwrd"&gt;="Button 3"&lt;/span&gt; &lt;span class="attr"&gt;SizeChanged&lt;/span&gt;&lt;span class="kwrd"&gt;="OnSizeChanged"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  18:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="Button4"&lt;/span&gt; &lt;span class="attr"&gt;Content&lt;/span&gt;&lt;span class="kwrd"&gt;="Button 4"&lt;/span&gt; &lt;span class="attr"&gt;SizeChanged&lt;/span&gt;&lt;span class="kwrd"&gt;="OnSizeChanged"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  19:  &lt;/span&gt;        &lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;Button&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="Button5"&lt;/span&gt; &lt;span class="attr"&gt;Content&lt;/span&gt;&lt;span class="kwrd"&gt;="Button 5"&lt;/span&gt; &lt;span class="attr"&gt;SizeChanged&lt;/span&gt;&lt;span class="kwrd"&gt;="OnSizeChanged"&lt;/span&gt; &lt;span class="kwrd"&gt;/&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;  20:  &lt;/span&gt;    &lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;StackPanel&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;  21:  &lt;/span&gt;&lt;span class="kwrd"&gt;&amp;lt;/&lt;/span&gt;&lt;span class="html"&gt;Window&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[


.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;SizeChanged event handler simply traces that the event has happened.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnSizeChanged(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, SizeChangedEventArgs e)&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;{&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;    Button button = (Button)sender;&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;    Trace.WriteLine(&lt;span class="str"&gt;"Size has been changed"&lt;/span&gt;, button.Name);&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;}&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[


.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;Window Loaded event handler is slightly more interesting. First it scheduler the code to be executed using &lt;a href="http://msdn.microsoft.com/en-us/library/ms615907%28v=vs.100%29.aspx"&gt;Dispatcher&lt;/a&gt; class, and then logs the event.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;&lt;span class="kwrd"&gt;private&lt;/span&gt; &lt;span class="kwrd"&gt;void&lt;/span&gt; OnWindowLoaded(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, RoutedEventArgs e)&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;{&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;    Dispatcher.BeginInvoke(&lt;span class="kwrd"&gt;new&lt;/span&gt; Action(() =&amp;gt; Trace.WriteLine(&lt;span class="str"&gt;"DONE!"&lt;/span&gt;, &lt;span class="str"&gt;"Rendering"&lt;/span&gt;)), DispatcherPriority.ContextIdle, &lt;span class="kwrd"&gt;null&lt;/span&gt;);&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;    Trace.WriteLine(&lt;span class="str"&gt;"Loaded"&lt;/span&gt;, &lt;span class="str"&gt;"Window"&lt;/span&gt;);&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;}&lt;/pre&gt;
&lt;/div&gt;
&lt;style type="text/css"&gt;&lt;![CDATA[


.csharpcode, .csharpcode pre
{
	font-size: small;
	color: black;
	font-family: consolas, "Courier New", courier, monospace;
	background-color: #ffffff;
	/*white-space: pre;*/
}
.csharpcode pre { margin: 0em; }
.csharpcode .rem { color: #008000; }
.csharpcode .kwrd { color: #0000ff; }
.csharpcode .str { color: #006080; }
.csharpcode .op { color: #0000c0; }
.csharpcode .preproc { color: #cc6633; }
.csharpcode .asp { background-color: #ffff00; }
.csharpcode .html { color: #800000; }
.csharpcode .attr { color: #ff0000; }
.csharpcode .alt 
{
	background-color: #f4f4f4;
	width: 100%;
	margin: 0em;
}
.csharpcode .lnum { color: #606060; }]]&gt;&lt;/style&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;As the result I had seen these trace messages.&lt;/p&gt;

&lt;p&gt; &lt;/p&gt;

&lt;div class="csharpcode"&gt;
  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   1:  &lt;/span&gt;Button5: Size has been changed&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   2:  &lt;/span&gt;Button4: Size has been changed&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   3:  &lt;/span&gt;Button3: Size has been changed&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   4:  &lt;/span&gt;Button2: Size has been changed&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   5:  &lt;/span&gt;Button1: Size has been changed&lt;/pre&gt;

  &lt;pre&gt;&lt;span class="lnum"&gt;   6:  &lt;/span&gt;Window: Loaded&lt;/pre&gt;

  &lt;pre class="alt"&gt;&lt;span class="lnum"&gt;   7:  &lt;/span&gt;Rendering: DONE!&lt;/pre&gt;
&lt;/div&gt;

&lt;p&gt; &lt;/p&gt;

&lt;p&gt;You can find the solution in &lt;a href="https://github.com/ilich/Examples/tree/master/OnRendered"&gt;GitHub&lt;/a&gt;.&lt;/p&gt; &lt;img src="http://geekswithblogs.net/ilich/aggbug/151009.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Ilya Verbitskiy</dc:creator>
            <guid>http://geekswithblogs.net/ilich/archive/2012/10/16/running-code-when-windows-rendering-is-completed.aspx</guid>
            <pubDate>Tue, 16 Oct 2012 19:34:53 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/ilich/comments/151009.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/ilich/archive/2012/10/16/running-code-when-windows-rendering-is-completed.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/ilich/comments/commentRss/151009.aspx</wfw:commentRss>
        </item>
        <item>
            <title>A few unpleasant facts about Visual Studio 2012.</title>
            <category>Visual Studio 2010/2012</category>
            <link>http://geekswithblogs.net/ilich/archive/2012/10/10/a-few-unpleasant-facts-about-visual-studio-2012.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/ilich/archive/2012/10/10/a-few-unpleasant-facts-about-visual-studio-2012.aspx'&gt;http://geekswithblogs.net/ilich/archive/2012/10/10/a-few-unpleasant-facts-about-visual-studio-2012.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;I have been playing with Visual Studio 2012 for the last couple of days. New IDE is pretty good, but, unfortunately, I found a few unpleasant facts.    &lt;br /&gt;First of all, new release is coming without Visual Studio setup projects. I am disappointed, because I am using it for my pet project – &lt;a href="https://github.com/ilich/EasyShutdown"&gt;Easy Shutdown&lt;/a&gt;. The tool is a small widget-like application which allows you to reboot, log out or shut down you PC. I have not done any decision yet, but I would probably migrate to &lt;a href="http://wixtoolset.org/"&gt;WiX&lt;/a&gt;. &lt;/p&gt;  &lt;p&gt;The second surprise is Microsoft will not add Visual Studio macros to the next release. Since I am lazy guy, I like small hacks using macros. For example I have macros to refresh all projects or attach to IIS.  The only way how to solve the problem is to convert your macros to Visual Studio plugin. I have not tried it yet, but I will definitely do in the nearest future.&lt;/p&gt;  &lt;p&gt;The third fact, I do not like, is Visual Studio default themes. May be somebody like it, but they are hard to adopt after Visual Studio 2010. Fortunately there is a solution. Matthew Johnson released &lt;a href="http://visualstudiogallery.msdn.microsoft.com/366ad100-0003-4c9a-81a8-337d4e7ace05"&gt;Visual Studio 2012 Color Theme Editor&lt;/a&gt;. It comes with a few predefined themes. I really like the Blue one.&lt;/p&gt;  &lt;p&gt;&lt;a href="http://gwb.blob.core.windows.net/ilich/Windows-Live-Writer/A-few-unpleasant-facts-about-Visual-Stu_13D22/VS_2012_Blue_Theme_2.png"&gt;&lt;img title="VS_2012_Blue_Theme" style="border-top: 0px; border-right: 0px; background-image: none; border-bottom: 0px; padding-top: 0px; padding-left: 0px; border-left: 0px; display: inline; padding-right: 0px" border="0" alt="VS_2012_Blue_Theme" src="http://gwb.blob.core.windows.net/ilich/Windows-Live-Writer/A-few-unpleasant-facts-about-Visual-Stu_13D22/VS_2012_Blue_Theme_thumb.png" width="505" height="346" /&gt;&lt;/a&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/ilich/aggbug/150955.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Ilya Verbitskiy</dc:creator>
            <guid>http://geekswithblogs.net/ilich/archive/2012/10/10/a-few-unpleasant-facts-about-visual-studio-2012.aspx</guid>
            <pubDate>Wed, 10 Oct 2012 20:18:24 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/ilich/comments/150955.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/ilich/archive/2012/10/10/a-few-unpleasant-facts-about-visual-studio-2012.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/ilich/comments/commentRss/150955.aspx</wfw:commentRss>
        </item>
        <item>
            <title>Welcome!</title>
            <link>http://geekswithblogs.net/ilich/archive/2012/10/09/welcome.aspx</link>
            <description>&lt;p&gt;Originally posted on: &lt;a href='http://geekswithblogs.net/ilich/archive/2012/10/09/welcome.aspx'&gt;http://geekswithblogs.net/ilich/archive/2012/10/09/welcome.aspx&lt;/a&gt;&lt;/p&gt;&lt;p&gt;Hello everyone! I am a Software Consultant, specializing in the Microsoft ecosystem
and High Load Application, and this is my first blog.&lt;/p&gt;

&lt;p&gt;The
decision to start it was pretty easy. I had woken up one day and decided to
start doing something outside my daily job. I have to reasons to start the
blog. The first one is I would like to learn from community. There are a lot of
really good people here. The second reason is I need a place where I can share
some tricks, hacks and useful pieces of code with the others.&lt;/p&gt;

&lt;p&gt;I will be
glad to see if my blog helps somebody.&lt;/p&gt;

&lt;p&gt;&lt;b&gt;Welcome on
board!&lt;/b&gt;&lt;/p&gt; &lt;img src="http://geekswithblogs.net/ilich/aggbug/150941.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Ilya Verbitskiy</dc:creator>
            <guid>http://geekswithblogs.net/ilich/archive/2012/10/09/welcome.aspx</guid>
            <pubDate>Tue, 09 Oct 2012 18:44:06 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/ilich/comments/150941.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/ilich/archive/2012/10/09/welcome.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/ilich/comments/commentRss/150941.aspx</wfw:commentRss>
        </item>
    </channel>
</rss>