<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:creativeCommons="http://backend.userland.com/creativeCommonsRssModule" xmlns:image="http://purl.org/rss/1.0/modules/image/">
    <channel>
        <title>Laurent Bugnion (GalaSoft)</title>
        <link>http://geekswithblogs.net/lbugnion/Default.aspx</link>
        <description>Diary of a Code Trotter</description>
        <language>en-US</language>
        <copyright>Laurent Bugnion</copyright>
        <managingEditor>laurent@galasoft.ch</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <creativeCommons:license>http://creativecommons.org/licenses/by/3.0/</creativeCommons:license>
        <image>
            <title>Laurent Bugnion (GalaSoft)</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/lbugnion/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>Sams Silverlight 2 Unleashed (was: Teach Yourself Silverlight in 24 Hours)</title>
            <category>Technical stuff</category>
            <category>.NET</category>
            <category>Silverlight</category>
            <category>Expression Blend</category>
            <category>.NET 3.5</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/09/01/sams-silverlight-2-unleashed-was-teach-yourself-silverlight-in-24.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;
My editor at Sams (hey Neil :)) and I decided to convert the book I am almost done writing into an Unleashed. There are multiple reasons for that, the most important being that the book addresses multiple audiences, and has a broad range of coverage, which is typical of the Unleashed series. The content goes enough in depth (according to Neil) to be placed in the Unleashed series.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
While the Unleashed series usually targets more advanced users than the Teach Yourself one, this book has lots of content that can be useful for a variety of
&lt;br /&gt;audiences with chapters that lead the user from the start of their journey through Silverlight. We put a great deal of attention in explaining complex concepts such as Object Oriented Programming, Data Binding, Templates, Transforms, the Animation system, Media integration, and so on with many practical descriptions, hands-on demos and figures which is typical of the books from Sams.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
I was not too sure about that move at first, but after thinking about it I am pretty happy about it. Because Silverlight is such a new technology, Silverlight 2 Unleashed will maybe remind you of the famous WPF Unleashed by Adam Nathan, a book that was also published a very short time after WPF was released. And we all know that this book was a great success.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
For those of you who already pre-ordered the book at Amazon, you should see the details about the new Unleashed book coming up soon.  Sorry about any confusion caused, I am sure the change is for the best and I hope you'll love the book! I just checked the Amazon page and saw that they already updated the picture, but not the title yet, so don't get confused.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
Oh, and since Amazon spilled the beans, I can now officially tell you that the book is in color. I won't start again the &lt;a href="http://charlespetzold.com/blog/2007/04/270433.html" target="_blank"&gt;Petzold&lt;/a&gt; vs &lt;a href="http://blogs.msdn.com/adam_nathan/archive/2007/04/30/petzold-vs-nathan.aspx" target="_blank"&gt;Nathan&lt;/a&gt; debate (sparkled by &lt;a href="http://www.codinghorror.com/blog/archives/000846.html" target="_blank"&gt;Jeff Atwood&lt;/a&gt;), but let's just say that I am really happy that the book is &lt;span style="font-weight:bold;"&gt;color coded&lt;/span&gt;. I think it makes understanding the code, especially for beginners, easier when it appears just as you see it in Visual Studio.
&lt;/p&gt;
&lt;div class="gslb_rsbDivImage"&gt;
&lt;img src="http://galasoft.ch/blogs-all/2008090101.png" alt="Sams Silverlight 2 Unleashed" title="Sams Silverlight 2 Unleashed" /&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124841"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124841" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/124841.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/09/01/sams-silverlight-2-unleashed-was-teach-yourself-silverlight-in-24.aspx</guid>
            <pubDate>Mon, 01 Sep 2008 20:20:52 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/124841.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/09/01/sams-silverlight-2-unleashed-was-teach-yourself-silverlight-in-24.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/124841.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/124841.aspx</trackback:ping>
        </item>
        <item>
            <title>Preorder my Silverlight book on Amazon</title>
            <category>Personal</category>
            <category>Technical stuff</category>
            <category>.NET</category>
            <category>Silverlight</category>
            <category>Expression Blend</category>
            <category>.NET 3.5</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/08/26/preorder-my-silverlight-book-on-amazon.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;
Wow. That's an incredible feeling, &lt;a href="http://www.amazon.com/Sams-Teach-Yourself-Silverlight-Hours/dp/0672330148/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1219700077&amp;amp;sr=8-1"&gt;seeing my name on Amazon&lt;/a&gt; :) The book is in pre-order!! I'd better get back to editing it then :)
&lt;/p&gt;
&lt;div class="gslb_rsbDivImage"&gt;
&lt;a href="http://www.amazon.com/Sams-Teach-Yourself-Silverlight-Hours/dp/0672330148/ref=sr_1_1?ie=UTF8&amp;amp;s=books&amp;amp;qid=1219700077&amp;amp;sr=8-1"&gt;&lt;img src="http://www.galasoft.ch/blogs-all/2008082601.png" alt="Sams Teach Yourself Silverlight in 24 Hours by Me :)" title="Sams Teach Yourself Silverlight in 24 Hours by Me :)" /&gt;&lt;/a&gt;
&lt;/div&gt;
&lt;div class="gslb_rsbDivImage"&gt;
&lt;img src="http://www.galasoft.ch/blogs-all/2008082602.png" alt="Sams Teach Yourself Silverlight in 24 Hours by Me :)" title="Sams Teach Yourself Silverlight in 24 Hours by Me :)" /&gt;
&lt;/div&gt;
&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124676"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124676" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/124676.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/08/26/preorder-my-silverlight-book-on-amazon.aspx</guid>
            <pubDate>Mon, 25 Aug 2008 22:24:31 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/124676.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/08/26/preorder-my-silverlight-book-on-amazon.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/124676.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/124676.aspx</trackback:ping>
        </item>
        <item>
            <title>Sams Teach Yourself Silverlight in 24 Hours, Table of Contents</title>
            <category>Technical stuff</category>
            <category>.NET</category>
            <category>Silverlight</category>
            <category>Expression Blend</category>
            <category>.NET 3.5</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/08/21/sams-teach-yourself-silverlight-in-24-hours-table-of-contents.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt; I've been working since September 2007 (more or less) on an upcoming Silverlight book titled "Teach Yourself Silverlight in 24 Hours" at Sams. This book will be aimed at beginners with the technology (and maybe even beginners in programming). The reader is walked (with a lot of code samples and step-by-step examples) through most features of this amazing technology. The book has 24 chapters, each of them taking more or less (maybe rather a little more than a little less, to be honest :)) one hour to read. There are really tons of demos and cool examples, and so far the feedback I got has been really great. &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; Clearly, the whole of Silverlight cannot be taught in 24 hours :) but the book should give a very good and deep insight in this framework, and give the reader a taste for more. I also tried to show where additional resources can be found, and to allow the user to continue their education on their own after they finish reading. &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; Below, you will find the table of content for the first 13 chapters of the book. 13 is my lucky number :) so I think it's a great time to publish this. It's also the chapters I have finished reviewing so far. The rest of the TOC will follow soon, stay posted! &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Teach Yourself Silverlight in 24 Hours&lt;/span&gt; &lt;br /&gt;
&lt;span style="font-weight: bold;"&gt;Hour 1&lt;/span&gt; &lt;br /&gt;
Introducing Silverlight &lt;br /&gt;
    Where Does Silverlight Come From? &lt;br /&gt;
        Automating Web Pages with JavaScript &lt;br /&gt;
        Cascading Style Sheets &lt;br /&gt;
        Progressing to DHTML &lt;br /&gt;
        Communicating in a Richer Way with AJAX &lt;br /&gt;
    Using Third-Party Plug-Ins &lt;br /&gt;
        Using Java Applets &lt;br /&gt;
        Using ActiveX Controls &lt;br /&gt;
        Using Flash Applications &lt;br /&gt;
    Running on Multiple Platforms &lt;br /&gt;
    Making the Web Application Secure &lt;br /&gt;
    Introducing Silverlight.net &lt;br /&gt;
    What Do I Need to Run Silverlight? &lt;br /&gt;
    Updating Your Runtime - Automatically &lt;br /&gt;
    Playing with Silverlight Demos &lt;br /&gt;
        Playing Chess against Silverlight &lt;br /&gt;
        Planning your trips with the “Airline” application &lt;br /&gt;
        DeepZooming into the Hard Rock Café &lt;br /&gt;
        Finding more demos &lt;br /&gt;
    What Do I Need to Develop Silverlight? &lt;br /&gt;
        Expression Studio &lt;br /&gt;
        Visual Studio 2008 &lt;br /&gt;
    Reading the Documentation &lt;br /&gt;
        Browsing the online reference &lt;br /&gt;
        Installing the documentation &lt;br /&gt;
        Finding more documentation &lt;br /&gt;
        Learning with tutorials &lt;br /&gt;
    Looking into Silverlight's Future &lt;br /&gt;
        Is ASP.NET/HTML/JavaScript dead? &lt;br /&gt;
    About Code in this Book &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 2&lt;/span&gt; &lt;br /&gt;
Understanding XAML &lt;br /&gt;
    Using XML for Data &lt;br /&gt;
    Using XML for User Interfaces &lt;br /&gt;
    Understanding XML Namespaces &lt;br /&gt;
    Defining Additional Namespaces &lt;br /&gt;
    Creating a Canvas with Children &lt;br /&gt;
    Attaching Properties: Canvas.Left and Canvas.Top &lt;br /&gt;
    Documenting Your Markup with XML Comments &lt;br /&gt;
    Testing XAML Markup &lt;br /&gt;
        Using SilverlightPad &lt;br /&gt;
        Using KaXaml &lt;br /&gt;
    Setting Properties in XAML &lt;br /&gt;
    Changing Brushes &lt;br /&gt;
    Composing Scenes in XAML &lt;br /&gt;
    Saving Typing, Saving Space &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activities &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 3&lt;/span&gt; &lt;br /&gt;
Playing with XAML Transforms and Animations &lt;br /&gt;
    Transforming Visuals &lt;br /&gt;
    Knowing the Types of Transforms &lt;br /&gt;
        RotateTransform &lt;br /&gt;
        TranslateTransform &lt;br /&gt;
        ScaleTransform &lt;br /&gt;
        SkewTransform &lt;br /&gt;
        MatrixTransform &lt;br /&gt;
    Composing Transforms &lt;br /&gt;
    Creating a Basic Animation &lt;br /&gt;
    Understanding the Animation's Elements &lt;br /&gt;
    Adding a Scale Animation &lt;br /&gt;
    Using Other Types of Animations &lt;br /&gt;
        Navigating the Property Path &lt;br /&gt;
    Deploying the Scene to a Web Page &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activities &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 4&lt;/span&gt; &lt;br /&gt;
Expressing Yourself with Expression Blend &lt;br /&gt;
    The Expression Studio in Short &lt;br /&gt;
    Installing Expression Blend &lt;br /&gt;
    Starting Expression Blend &lt;br /&gt;
    Setting Options &lt;br /&gt;
    Creating a New Project &lt;br /&gt;
    Understanding the Panels &lt;br /&gt;
    Looking at the Files &lt;br /&gt;
    Executing in the Web Browser &lt;br /&gt;
    Working with Shapes &lt;br /&gt;
    Using the Properties Panel &lt;br /&gt;
    Using the Color Picker &lt;br /&gt;
        Creating a LinearGradientBrush &lt;br /&gt;
        Changing the Gradient Vector &lt;br /&gt;
        Creating a RadialGradientBrush &lt;br /&gt;
    Creating a 3D Border Effect Using RadialGradientBrush &lt;br /&gt;
    Resetting Properties to Their Default Value &lt;br /&gt;
    Composing the Elements Hierarchy &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activities &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 5&lt;/span&gt; &lt;br /&gt;
Using Media &lt;br /&gt;
    Mixing Colors &lt;br /&gt;
        Why FF? &lt;br /&gt;
    Seeing Through the Transparency Channel &lt;br /&gt;
    Seeing Through the Opacity &lt;br /&gt;
    Using Vector Graphics &lt;br /&gt;
    Adding Media to Your Scenes &lt;br /&gt;
        Laying Out the Application &lt;br /&gt;
        Adding Pictures &lt;br /&gt;
        Adding video &lt;br /&gt;
        Testing the Result Quickly in a Web Browser &lt;br /&gt;
        Refining the Layout &lt;br /&gt;
        Adding Yet Another Image &lt;br /&gt;
    Controlling Sound and Video &lt;br /&gt;
        Switching Auto-Play Off &lt;br /&gt;
        Creating an Endless Loop &lt;br /&gt;
        Pausing and Playing the Video &lt;br /&gt;
        Setting a "Hand" Cursor &lt;br /&gt;
    Checking the Other Properties &lt;br /&gt;
        Filling the Space &lt;br /&gt;
        Hiding the Media from Mouse Input &lt;br /&gt;
    Using Media to Write &lt;br /&gt;
        Writing with Video &lt;br /&gt;
        Writing with Images &lt;br /&gt;
    Transforming Media &lt;br /&gt;
    Using Web-Based Media &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activities &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 6&lt;/span&gt; &lt;br /&gt;
Blending a Little More &lt;br /&gt;
    Creating Transforms &lt;br /&gt;
    Creating an OpacityMask &lt;br /&gt;
    Paths &lt;br /&gt;
        Creating a Path from Scratch &lt;br /&gt;
        Using Splines to Modify a Path &lt;br /&gt;
        Combining Shapes &lt;br /&gt;
    Clipping Path &lt;br /&gt;
        Paths in XAML &lt;br /&gt;
    Grouping Controls &lt;br /&gt;
        Grouping Elements &lt;br /&gt;
        Trying Other Panels &lt;br /&gt;
        Scrolling the Thumbnails &lt;br /&gt;
    Making a User Control &lt;br /&gt;
        Creating a User Control &lt;br /&gt;
        Using the User Control &lt;br /&gt;
    Working on the Thumbnails Gallery &lt;br /&gt;
        Adding a Display Frame &lt;br /&gt;
        Adding a Reflection under the Thumbnails &lt;br /&gt;
        Reflecting Video &lt;br /&gt;
        Just One Last Thing &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activity &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 7&lt;/span&gt; &lt;br /&gt;
Deploying to a Web Page &lt;br /&gt;
    Making Your Own Test Page &lt;br /&gt;
    Understanding the object Tag &lt;br /&gt;
        Attributes &lt;br /&gt;
        Parameters &lt;br /&gt;
        Playing with the Attributes and Parameters &lt;br /&gt;
        Deploying with JavaScript &lt;br /&gt;
    Detecting Silverlight &lt;br /&gt;
    Integrating Silverlight in an Existing Web Page &lt;br /&gt;
        Understanding the Original Code &lt;br /&gt;
        Getting the XAP file &lt;br /&gt;
        Modifying the Markup &lt;br /&gt;
        Testing the Result &lt;br /&gt;
        Referencing a XAP on Another Web Server &lt;br /&gt;
    Getting Web Space &lt;br /&gt;
        Web Server Requirements &lt;br /&gt;
        Finding a Provider &lt;br /&gt;
    Getting Started &lt;br /&gt;
        Setting Up an FTP Client &lt;br /&gt;
        Connecting to Your Server &lt;br /&gt;
    Copying Your Silverlight Application &lt;br /&gt;
        Testing Your Work &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activities &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 8&lt;/span&gt; &lt;br /&gt;
Programming Silverlight with JavaScript &lt;br /&gt;
    Learning the Basics &lt;br /&gt;
        Comments &lt;br /&gt;
        Semicolons &lt;br /&gt;
        Case Sensitivity &lt;br /&gt;
        Variables &lt;br /&gt;
        Functions &lt;br /&gt;
        Prototype, this, new &lt;br /&gt;
        Types &lt;br /&gt;
        Built-In Objects and Libraries &lt;br /&gt;
        alert &lt;br /&gt;
        undefined &lt;br /&gt;
        null &lt;br /&gt;
        Handling Events &lt;br /&gt;
    Understanding the Concept of Objects &lt;br /&gt;
        Interfacing with Other Instances &lt;br /&gt;
        Storing Stuff Globally &lt;br /&gt;
    Using the Literal Notation and JSON &lt;br /&gt;
        Creating Objects with JSON &lt;br /&gt;
    Static Members &lt;br /&gt;
    Loading Scripts in a Web Page &lt;br /&gt;
    Understanding the Context &lt;br /&gt;
    Integrating Silverlight in an Existing Web Page Using JavaScript &lt;br /&gt;
        Finding Silverlight.js &lt;br /&gt;
        Using Silverlight.js &lt;br /&gt;
        Detecting Silverlight Versions &lt;br /&gt;
        Detecting JavaScript &lt;br /&gt;
        Modifying the Web Page During Runtime &lt;br /&gt;
    Debugging &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activities &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 9&lt;/span&gt; &lt;br /&gt;
Understanding .NET &lt;br /&gt;
    Going Back in Time: A Little History of .NET &lt;br /&gt;
        Versions, Versions, Versions &lt;br /&gt;
        Managed Versus Unmanaged &lt;br /&gt;
    Downloading and Installing Visual Studio 2008 &lt;br /&gt;
    Creating a Silverlight 2 Application in Visual Studio 2008 &lt;br /&gt;
        Building and Running the Application &lt;br /&gt;
        Finding Compilation Errors &lt;br /&gt;
        Exploring the Files &lt;br /&gt;
        Running the (Empty) Application &lt;br /&gt;
    Intellisense &lt;br /&gt;
    Programming C# with Basic Constructs &lt;br /&gt;
        Types &lt;br /&gt;
        Type Conversion &lt;br /&gt;
        if then else &lt;br /&gt;
        for &lt;br /&gt;
        foreach &lt;br /&gt;
        while &lt;br /&gt;
        do...while &lt;br /&gt;
        switch...case &lt;br /&gt;
        Operators &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 10&lt;/span&gt; &lt;br /&gt;
Progressing with .NET &lt;br /&gt;
    Programming with Objects in C# &lt;br /&gt;
        Breaking Your Problem into Smaller Ones &lt;br /&gt;
        Namespaces and the using Directive &lt;br /&gt;
        Visibility &lt;br /&gt;
        Properties &lt;br /&gt;
        Inheritance &lt;br /&gt;
    Adding Interactivity to the Thumbnails Application &lt;br /&gt;
        Adding Event Handlers in Code &lt;br /&gt;
        Displaying the Expanded Media &lt;br /&gt;
    Overloading Methods &lt;br /&gt;
    Raising Events and Using Delegates &lt;br /&gt;
        Creating an EventArgs &lt;br /&gt;
        Declaring the Event &lt;br /&gt;
        Subscribing to the Event &lt;br /&gt;
    Storing Data on the Client &lt;br /&gt;
        Understanding the Isolated Storage Security Restrictions &lt;br /&gt;
        Creating Objects &lt;br /&gt;
        Reading from the Isolated Storage &lt;br /&gt;
        Writing to the Isolated Storage &lt;br /&gt;
        Updating the User Interface &lt;br /&gt;
        Multibrowser Compatibility &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activities &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 11&lt;/span&gt; &lt;br /&gt;
Progressing with Animations &lt;br /&gt;
    Animating Elements in Blend &lt;br /&gt;
        Testing the Application &lt;br /&gt;
        Editing the Animations' Properties &lt;br /&gt;
        Easing In and Out &lt;br /&gt;
    Synchronizing Animations &lt;br /&gt;
        Understanding the Animation Elements &lt;br /&gt;
    Reversing a Storyboard &lt;br /&gt;
    PointAnimation &lt;br /&gt;
    Starting and Stopping the Animation &lt;br /&gt;
    Working on the Thumbnails Gallery &lt;br /&gt;
        Making a Scenario &lt;br /&gt;
        Setting the Stage &lt;br /&gt;
        Making the Draft Animation &lt;br /&gt;
        Easing the Translate Animation &lt;br /&gt;
        Triggering the Animation in Code &lt;br /&gt;
        Creating the "Fading" Animation in Code &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activity &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 12&lt;/span&gt; &lt;br /&gt;
Encoding Videos with Expression Encoder &lt;br /&gt;
    Before We Start... &lt;br /&gt;
    Introducing Expression Encoder &lt;br /&gt;
    Setting Options &lt;br /&gt;
    Understanding the Panels &lt;br /&gt;
    Importing a Video &lt;br /&gt;
    Saving your Changes &lt;br /&gt;
    Specifying the Output Type &lt;br /&gt;
        Editing the Video Size and Aspect &lt;br /&gt;
        Advanced Processing and Codec Settings &lt;br /&gt;
        Adding a Leader and Trailer Video &lt;br /&gt;
    Testing Before Encoding &lt;br /&gt;
    Setting Metadata &lt;br /&gt;
        Adding Your Own Metainformation &lt;br /&gt;
        Creating Chapters &lt;br /&gt;
        Creating Captions &lt;br /&gt;
    Encoding the Video for Silverlight &lt;br /&gt;
    Checking the Result &lt;br /&gt;
        Playing the Video in Full Screen &lt;br /&gt;
    Advanced Parameters &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activities &lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt; &lt;span style="font-weight: bold;"&gt;Hour 13&lt;/span&gt; &lt;br /&gt;
Progressing with Videos &lt;br /&gt;
    Why Streaming? &lt;br /&gt;
    Publishing on Your Own Website &lt;br /&gt;
        Copying the Files &lt;br /&gt;
    Adding an Overlay &lt;br /&gt;
        Adding an Icon or a Video &lt;br /&gt;
        Setting Advanced Properties &lt;br /&gt;
        Adding a XAML Overlay &lt;br /&gt;
    Letting Your Users Choose the Player &lt;br /&gt;
        Copying the Files &lt;br /&gt;
        Modifying the Files &lt;br /&gt;
        Creating the Video &lt;br /&gt;
        How Does It Work? &lt;br /&gt;
    Publishing on Microsoft Silverlight Streaming Servers &lt;br /&gt;
        Signing Up &lt;br /&gt;
        Installing, Setting Up the Plug-in, Publishing &lt;br /&gt;
        Testing the Output &lt;br /&gt;
    Adding the Application in an Existing Web Page &lt;br /&gt;
        Using an iframe &lt;br /&gt;
        Using JavaScript and a Live Control &lt;br /&gt;
    Firing Script Commands (and Catching Them) &lt;br /&gt;
    Modifying the Player Template in Blend &lt;br /&gt;
        Adding a Full Screen Button &lt;br /&gt;
        Handling the Event in Script &lt;br /&gt;
        Testing the Result &lt;br /&gt;
    Summary &lt;br /&gt;
    Workshop &lt;br /&gt;
        Quiz &lt;br /&gt;
        Answers &lt;br /&gt;
        Activities &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124602"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124602" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/124602.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/08/21/sams-teach-yourself-silverlight-in-24-hours-table-of-contents.aspx</guid>
            <pubDate>Thu, 21 Aug 2008 13:38:59 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/124602.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/08/21/sams-teach-yourself-silverlight-in-24-hours-table-of-contents.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/124602.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/124602.aspx</trackback:ping>
        </item>
        <item>
            <title>Joining IdentityMine (and leaving Siemens)</title>
            <category>Personal</category>
            <category>Technical stuff</category>
            <category>WPF</category>
            <category>Silverlight</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/08/20/joining-identitymine-and-leaving-siemens.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;
These last months have been amongst the most intensive I have ever been in my life. Since my last blog post, I have been extremely busy finishing writing my Silverlight book and starting the editing work. It is well underway, and we will publish later this year. It is a very exciting time for me to see that book shaping up after almost a year of work on it. Yes I will be happy to see the finished, paper-printed work!!
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
Another reason why this time of the year has been especially exciting for me is that I decided to take a new challenge in my professional life. From the 1st of December, I will be working for &lt;a href="http://www.identitymine.com/" target="_blank"&gt;IdentityMine&lt;/a&gt;, the well-known Tacoma- and Seattle-based firm (WA, USA) specializing in Windows Presentation Foundation and Silverlight.
&lt;/p&gt;
&lt;div class="gslb_rsbDivImage"&gt;
&lt;img src="http://www.galasoft.ch/blogs-all/2008082001.jpg" alt="IdentityMine is hiring" title="IdentityMine is hiring" /&gt;
&lt;/div&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
I am really really excited about this opportunity to work with some of the best software developers and designers in this field, such as &lt;a href="http://blog.nerdplusart.com/" target="_blank"&gt;Robby Ingebretsen&lt;/a&gt;, &lt;a href="http://www.drwpf.com/blog/" target="_blank"&gt;Dr WPF&lt;/a&gt;, &lt;a href="http://designerslove.net/" target="_blank"&gt;Nathan Dunlap&lt;/a&gt; and more. In the position of Senior Interactive Developer, I will be involved in various projects worldwide and will also help develop the european operations of IdentityMine. In this activity, I will remain based in Zurich, Switzerland, but I expect to continue travelling from time to time. More on this soon!
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
After 5 weeks holidays in Malaysia and Hong Kong (I really needed a break), I am now back in the office and the news may become official. These next weeks, I will be working hard on ensuring the transition within my current project, and of course finishing the editing work on my book. This will be exciting for sure. Needless to say, I am also bursting with ideas for new projects when the book will be finished, and I am really impatient to start implementing them. I am also looking forward to resuming blogging on a more frequent basis, and you should expect many more articles about Silverlight and WPF soon!! Stay posted.
&lt;/p&gt;
&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124568"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=124568" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/124568.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/08/20/joining-identitymine-and-leaving-siemens.aspx</guid>
            <pubDate>Wed, 20 Aug 2008 12:08:57 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/124568.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/08/20/joining-identitymine-and-leaving-siemens.aspx#feedback</comments>
            <slash:comments>15</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/124568.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/124568.aspx</trackback:ping>
        </item>
        <item>
            <title>2 years and 266 posts later...</title>
            <category>Personal</category>
            <category>Website</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/06/11/2-years-and-266-posts-later.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;2 years ago, on a Sunday, I posted my first blog post. Since then so many amazing things happened, partly due to this blog: I got the MVP status, I got a better recognition in my firm for my expert knowledge on some topics (such as WPF, Silverlight, ASP.NET and C#), I started speaking in conferences... One year later, I got a book deal (more on this soon). I met amazing people, and made a lot of new friends in the industry. I went to Redmond a few times and had the chance to talk to some really amazing talents in the software field. More importantly, I really had the feeling that my contributions were acknowledged, and valued. It's really been 2 amazing years. &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt;To all of you reading these lines, thank you. You make my life as a software engineer better, more interesting, and you really help become a better developer. &lt;/p&gt; &lt;div class="gslb_rsbDivImage"&gt;&lt;img title="Thank you" alt="Thank you" src="http://www.galasoft.ch/blogs-all/2008061101.jpg" /&gt; &lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122794"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122794" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122794.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/06/11/2-years-and-266-posts-later.aspx</guid>
            <pubDate>Wed, 11 Jun 2008 13:05:21 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122794.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/06/11/2-years-and-266-posts-later.aspx#feedback</comments>
            <slash:comments>7</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122794.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122794.aspx</trackback:ping>
        </item>
        <item>
            <title>Silverlight 2 beta 2 is live!</title>
            <category>Technical stuff</category>
            <category>.NET</category>
            <category>Silverlight</category>
            <category>Expression Blend</category>
            <category>.NET 3.5</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/06/07/silverlight-2-beta-2-is-live.aspx</link>
            <description>&lt;p&gt;Here we go, Silverlight 2 beta 2 can be downloaded and installed! I had the chance to take part to an "insiders" program at Microsoft, and to play with SL2 b2 for a couple of weeks, and it's a good one. You should switch to b2 as soon as you can!&lt;/p&gt; &lt;p&gt;There are obviously incompatibilities between b1 and b2, but much, much less than between the alpha version and b1. We're getting there!!&lt;/p&gt; &lt;p&gt;Silverlight 2 beta 2 will be used to build applications related to the Beijing olympics, so it's going to be a real nature test for that version. As for the final release.... it's still very much hush hush, so let's leave it for now :)&lt;/p&gt; &lt;p&gt;The best place to start is &lt;a href="http://weblogs.asp.net/scottgu/archive/2008/06/06/silverlight-2-beta2-released.aspx"&gt;ScottGu's blog&lt;/a&gt;. As usual, Scott describes the new features at length, and has links to all the places where you can download the good stuff.&lt;/p&gt; &lt;p&gt;Note that there is also a new version of Blend 2.5 which can be installed next to a "normal" Expression Blend V2. There is supposed to be a new version of Deep Zoom Composer too, but the download seems to be down currently.&lt;/p&gt; &lt;p&gt;Enjoy!!&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122688"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122688" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122688.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/06/07/silverlight-2-beta-2-is-live.aspx</guid>
            <pubDate>Sat, 07 Jun 2008 06:23:40 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122688.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/06/07/silverlight-2-beta-2-is-live.aspx#feedback</comments>
            <slash:comments>3</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122688.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122688.aspx</trackback:ping>
        </item>
        <item>
            <title>Microsoft, you're kidding me, right??</title>
            <category>Technical stuff</category>
            <category>Expression Blend</category>
            <category>.NET 3.5</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/06/05/microsoft-youre-kidding-me-right.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;You got to be kidding me. What if I want Expression in the US locale, I can't buy it just because my IP is not in the US? Honestly? You are *that* stupid? &lt;/p&gt; &lt;div class="gslb_rsbDivImage"&gt;&lt;img title="WTF" alt="WTF" src="http://www.galasoft.ch/blogs-all/2008060501.png" /&gt; &lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122642"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122642" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122642.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/06/05/microsoft-youre-kidding-me-right.aspx</guid>
            <pubDate>Thu, 05 Jun 2008 17:48:48 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122642.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/06/05/microsoft-youre-kidding-me-right.aspx#feedback</comments>
            <slash:comments>4</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122642.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122642.aspx</trackback:ping>
        </item>
        <item>
            <title>A short break</title>
            <category>Personal</category>
            <category>Technical stuff</category>
            <category>.NET</category>
            <category>WPF</category>
            <category>Silverlight</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/05/31/a-short-break.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;I am going to take a short break of blogging for a couple of months. The reason is simple: I have been working on a book about Silverlight 2 since September last year, and we are in a phase now where I need to concentrate on that exclusively, and put other activities aside. I might post the occasional article from time to time, but until mid-Summer, it's going to be write write write. &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt;Stay posted for news about the book coming up, and don't delete me from your feeds, it's really only temporary :) &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122512"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122512" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122512.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/05/31/a-short-break.aspx</guid>
            <pubDate>Sat, 31 May 2008 11:34:38 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122512.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/05/31/a-short-break.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122512.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122512.aspx</trackback:ping>
        </item>
        <item>
            <title>My talk at the &amp;quot;Internet Briefing RIA conference&amp;quot; in Zurich</title>
            <category>Technical stuff</category>
            <category>.NET</category>
            <category>WPF</category>
            <category>Expression Blend</category>
            <category>.NET 3.5</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/05/29/my-talk-at-the-quotinternet-briefing-ria-conferencequot-in-zurich.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt; I just &lt;a href="http://www.galasoft.ch/presentations_en.html#UltraRichApplications" target="_blank"&gt;posted today's talk&lt;/a&gt; at the RIA conference in the World Trade Center, Zurich. Unfortunately it was not recorded, but the slides and the demos' source code is available on my site. &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt; The talk went really good, even though the crowd was rather tough :) Trying to "sell" Windows Presentation Foundation, a desktop Windows-only technology, to an audience of web developers, many of them using Java and open source technologies (and even one Adobe employee) sparkled some very interesting discussions. I can't say I convinced everyone (and it was most certainly not my intention), but I think everybody had a really good time. I know for sure that I did! &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt; To all those who stayed until the end of my presentation, and even though mine was the last presentation of the day, thank you very much!! To those who couldn't stay, I hope you'll have fun checking the slides and the demos, and &lt;a href="http://www.galasoft.ch/contact" target="_blank"&gt;contact me&lt;/a&gt; if anything is unclear!! &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122482"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122482" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122482.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/05/29/my-talk-at-the-quotinternet-briefing-ria-conferencequot-in-zurich.aspx</guid>
            <pubDate>Thu, 29 May 2008 21:11:28 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122482.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/05/29/my-talk-at-the-quotinternet-briefing-ria-conferencequot-in-zurich.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122482.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122482.aspx</trackback:ping>
        </item>
        <item>
            <title>TweetMyPage V0.2 - Now with &amp;quot;from TweetMyPage&amp;quot; indicator</title>
            <category>Technical stuff</category>
            <category>.NET</category>
            <category>ASP.NET 2.0</category>
            <category>Work</category>
            <category>TweetMyPage</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/05/29/tweetmypage-v0.2---now-with-quotfrom-tweetmypagequot-indicator.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt; As soon as I had my &lt;a href="http://www.galasoft.ch/TweetMyPage/Info.aspx" target="_blank"&gt;info page&lt;/a&gt; online, I asked Twitter to accept TweetMyPage as a Twitter application, and to mark the messages posted with TweetMyPage with "from TweetMyPage". Note for developers: There is a form to fill on the Twitter API page. It's really fast, and one day later I got the answer that it was accepted. &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt; From now on, messages posted from TweetMyPage are marked as such: &lt;/p&gt; &lt;div class="gslb_rsbDivImage"&gt; &lt;img src="http://www.galasoft.ch/blogs-all/2008052901.png" alt="posted from TweetMyPage" title="posted from TweetMyPage" /&gt; &lt;/div&gt; &lt;p class="gslb_rsbPParagraph"&gt; I got a couple of testers so far, and already got a few requests for additional features. I am now evaluating how I can modify the application to integrate these new features, and will update TweetMyPage as soon as I got time (in 2018) (just kidding). &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt; TweetMyPage is in beta for the moment, and if you want to try it, I'll be happy to send you an invite (just leave a comment down here or &lt;a href="http://www.galasoft.ch/contact_en.html" target="_blank"&gt;send me an email&lt;/a&gt;. If all goes well, I will make TweetMyPage public next week or so. &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122471"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122471" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122471.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/05/29/tweetmypage-v0.2---now-with-quotfrom-tweetmypagequot-indicator.aspx</guid>
            <pubDate>Thu, 29 May 2008 09:00:35 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122471.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/05/29/tweetmypage-v0.2---now-with-quotfrom-tweetmypagequot-indicator.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122471.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122471.aspx</trackback:ping>
        </item>
        <item>
            <title>GalaSoft &amp;quot;TweetMyPage&amp;quot; released for tests</title>
            <category>Technical stuff</category>
            <category>Website</category>
            <category>Work</category>
            <category>TweetMyPage</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/05/28/galasoft-quottweetmypagequot-released-for-tests.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;&lt;a href="http://www.galasoft.ch/TweetMyPage/Info.aspx" target="_blank"&gt;GalaSoft "TweetMyPage"&lt;/a&gt; is a web application allowing you to post to Twitter what you're currently reading in your web browser, on a simple button click. &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt;After you install the small "scriptlet" button in your web browser's "bookmarks toolbar" (Firefox) or "Links toolbar" (IE), any time you want to share what you're reading with the world, you can simply click on the "TweetMyPage" button. &lt;/p&gt; &lt;div class="gslb_rsbDivImage"&gt;&lt;img title="TweetMyPage button" alt="TweetMyPage button" src="http://www.galasoft.ch/blogs-all/2008052801.png" /&gt; &lt;/div&gt; &lt;p class="gslb_rsbPParagraph"&gt;If it's the first time in this session that you are posting, you will be asked to enter your Twitter user name and password. After that first time, you will not be asked for it anymore, not until you close your web browser. &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt;As a result, a message will be sent in your name to Twitter, for example: &lt;/p&gt; &lt;div class="gslb_rsbDivImage"&gt;&lt;img title="Twitter entry" alt="Twitter entry" src="http://www.galasoft.ch/blogs-all/2008052802.png" /&gt; &lt;/div&gt; &lt;p class="gslb_rsbPParagraph"&gt;When you create the "Bookmark button" in the &lt;a href="http://www.galasoft.ch/TweetMyPage/Info.aspx#Settings" target="_blank"&gt;Settings page&lt;/a&gt;, you can customize the "Reading" prefix that will be posted, as well as a couple of other settings. &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt;TweetMyPage is in beta for the moment, and if you want to try it, I'll be happy to send you an invite (just leave a comment down here or &lt;a href="http://www.galasoft.ch/contact" target="_blank"&gt;send me an email&lt;/a&gt;. If all goes well, I will make TweetMyPage public next week or so. &lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122457"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122457" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122457.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/05/28/galasoft-quottweetmypagequot-released-for-tests.aspx</guid>
            <pubDate>Wed, 28 May 2008 19:54:38 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122457.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/05/28/galasoft-quottweetmypagequot-released-for-tests.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122457.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122457.aspx</trackback:ping>
        </item>
        <item>
            <title>WPF talk this Thursday: "Ultra Rich Interactive Applications"</title>
            <category>Technical stuff</category>
            <category>.NET</category>
            <category>WPF</category>
            <category>Silverlight</category>
            <category>.NET 3.5</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/05/27/wpf-talk-this-thursday-ultra-rich-interactive-applications.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;
I have been in very much stress lately and hardly had time to post, but I don't forget you, dear readers...
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
Anyway, this Thursday, I will be talking in a RIA conference organized by the &lt;a href="http://www.internet-briefing.ch/RiaKonferenz" target="_blank"&gt;Internet Briefing group&lt;/a&gt; here in Zurich, in the World Trade Center. My talk is titled &lt;span style="font-weight:bold;"&gt;"Ultra Rich Interactive Applications with WPF"&lt;/span&gt; and subtitled &lt;span style="font-weight:bold;"&gt;"When Silverlight is not enough..."&lt;/span&gt;. I think it's going to be an interesting talk (but obviously I am partial) about the major differences between WPF and Silverlight, and the added richness that WPF provides. I am a big fan of Silverlight, but I have to admit that it's nice going back to the amazing power of WPF sometimes, without having to worry about "is that feature even implemented in Silverlight"?
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
The talk takes place between 16:30 and 17:30 in the World Trade Center, Leutschenbachstrasse 95, 8050 Zürich. Hoping to see some of you there, maybe!
&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122405"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122405" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122405.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/05/27/wpf-talk-this-thursday-ultra-rich-interactive-applications.aspx</guid>
            <pubDate>Tue, 27 May 2008 12:47:23 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122405.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/05/27/wpf-talk-this-thursday-ultra-rich-interactive-applications.aspx#feedback</comments>
            <slash:comments>7</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122405.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122405.aspx</trackback:ping>
        </item>
        <item>
            <title>New GalaSoft stickers</title>
            <category>Personal</category>
            <category>Website</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/05/22/new-galasoft-stickers.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;On a whim, I made a &lt;a href="http://www.cafepress.com/cp/customize/product.aspx?clear=true&amp;amp;number=%20264151622" target="_blank"&gt;GalaSoft sticker&lt;/a&gt; and ordered 48 of them at &lt;a href="http://www.cafepress.com/" target="_blank"&gt;CafePress.com&lt;/a&gt;. The stickers just arrived yesterday, and they look pretty cool. I plan to keep some on me, so next time you cross my path, make sure you get a GalaSoft sticker for your laptop &lt;/p&gt; &lt;div class="gslb_rsbDivImage"&gt;&lt;img title="GalaSoft sticker" alt="GalaSoft sticker" src="http://www.galasoft.ch/blogs-all/2008052201.png" /&gt; &lt;/div&gt; &lt;div class="gslb_rsbDivImage"&gt;&lt;img title="My laptop" alt="My laptop" src="http://www.galasoft.ch/blogs-all/2008052202.jpg" /&gt; &lt;/div&gt; &lt;p class="gslb_rsbPParagraph"&gt;&lt;a href="http://www.galasoft.ch" target="_new" atomicselection="true"&gt;&lt;img alt="http://www.galasoft.ch" src="http://www.galasoft.ch/images/counter-blog-all.png" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122305"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122305" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122305.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/05/22/new-galasoft-stickers.aspx</guid>
            <pubDate>Thu, 22 May 2008 12:27:10 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122305.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/05/22/new-galasoft-stickers.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122305.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122305.aspx</trackback:ping>
        </item>
        <item>
            <title>My resume is now online</title>
            <category>Personal</category>
            <category>Website</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/05/10/my-resume-is-now-online.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;I finally did something I wanted to do for a loooooong time: I cleaned up and &lt;a href="http://www.galasoft.ch/resume" target="_blank"&gt;put my resume online&lt;/a&gt; on my website. Note for Beat (my boss), if you read this, don't panic, I am not leaving just right now :) Anyway. For those of you who like to know my (professional) self better, feel free to &lt;a href="http://www.galasoft.ch/resume" target="_blank"&gt;take a look&lt;/a&gt;. If you want a username and password to check my certificates and awards, &lt;a href="http://www.galasoft.ch/contact_en.html" target="_blank"&gt;contact me&lt;/a&gt;. And if you have any comment, give me feedback!! &lt;/p&gt; &lt;p class="gslb_rsbPParagraph"&gt;&lt;a href="http://www.galasoft.ch" target="_new" atomicselection="true"&gt;&lt;img alt="http://www.galasoft.ch" src="http://www.galasoft.ch/images/counter-blog-all.png" /&gt;&lt;/a&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122029"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=122029" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/122029.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/05/10/my-resume-is-now-online.aspx</guid>
            <pubDate>Fri, 09 May 2008 22:28:08 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/122029.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/05/10/my-resume-is-now-online.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/122029.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/122029.aspx</trackback:ping>
        </item>
        <item>
            <title>WPF: ListView/GridView minimum and maximum width for a column</title>
            <category>Technical stuff</category>
            <category>.NET</category>
            <category>WPF</category>
            <category>.NET 3.5</category>
            <category>Work</category>
            <link>http://geekswithblogs.net/lbugnion/archive/2008/05/06/wpf-listviewgridview-minimum-and-maximum-width-for-a-column.aspx</link>
            <description>&lt;p class="gslb_rsbPParagraph"&gt;
A WPF ListView is a possible replacement for a datagrid, when it doesn't have to support advanced features like grouping or filtering of rows. If you use a ListView in your WPF application, and set the "View" property of this ListView to be a GridView.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
A ListView/GridView even supports features like reordering and resizing columns. Unfortunately, it is not possible to define a minimum or maximum width for the columns. Fortunately, it is not really to do this in the code behind. Let's see how.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
First we need to understand how exactly the resizing of a GridView column works. When a column can be resized, a narrow vertical line appears on the right side of the column. Passing the mouse over this line turns the cursor into a "resize" cursor.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
To find out what exactly this line is made of, we can use a tool like &lt;a href="http://www.blois.us/Snoop/" target="_blank"&gt;Snoop&lt;/a&gt;, or &lt;a href="http://www.codeproject.com/KB/WPF/MoleForWPF.aspx" target="_blank"&gt;Mole&lt;/a&gt;. These tools display the inner structure of a WPF UI, also known as the Visual Tree. For example, in Mole, we can navigate down to our ListView and display the header row's inner structure:
&lt;/p&gt;
&lt;div class="gslb_rsbDivImage"&gt;
&lt;img src="http://www.galasoft.ch/blogs-all/2008050301.png" alt="Header row of a ListView" title="Header row of a ListView" /&gt;
&lt;/div&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
The feature that is of particular interest to us is the "Thumb" control, named PART_HeaderGripper. This requires some explanations:
&lt;/p&gt;
&lt;ul class="gslb_rsbList"&gt;
&lt;li&gt;
A Drag action is the action through which a control is selected (click-and-hold) and then the mouse is moved. The expected action is usually that the clicked control moves together with the mouse, but other actions may be performed too, for example resizing the columns of a grid, etc...
&lt;/li&gt;
&lt;li&gt;
A Thumb is a small WPF control that can be dragged. It has a collection of events that are used to program what happens when a drag action is performed on the control. For example, the event Thumb.DragDeltaEvent is fired every time that the Thumb is dragged a little.
&lt;br /&gt;Note: A Thumb doesn't really look like anything (well, it does look like a Rectangle!). With the great ability that WPF has to redefine the look&amp;amp;feel of any control, you can make a Thumb look like anything you need. This is why the Thumb control is in the namespace System.Windows.Controls.Primitives: The Thumb is usually used to create other controls, hence the "Primitives".
&lt;/li&gt;
&lt;li&gt;
The makers of WPF controls have for convention to name inner controls of other controls with the "PART_" prefix.
&lt;/li&gt;
&lt;/ul&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
Once we know this, we can try to intercept the events raised by the Thumb control named "PART_HeaderGripper", when the ListView's user resizes the columns. Remember, in WPF, events are "routed", we say that they "bubble" up from the control they originate from to the parent and the parent's parent, etc...
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
As a first try, we can add an event handler on the ListView and try to handle the "Thumb.DragDelta" event:
&lt;/p&gt;
&lt;div class="gslb_rsbDivCodeSection"&gt;
&lt;div class="gslb_rsbDivCode" style="white-space: pre; font-family: Monospace;"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;ListView&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="MyListView"&lt;/span&gt;
          &lt;span class="attr"&gt;IsSynchronizedWithCurrentItem&lt;/span&gt;&lt;span class="kwrd"&gt;="True"&lt;/span&gt;
          &lt;span class="attr"&gt;ItemsSource&lt;/span&gt;&lt;span class="kwrd"&gt;="{Binding Path=Items,
                                Mode=Default,
                                Source={StaticResource DataProvider}}"&lt;/span&gt;
          &lt;span class="attr"&gt;Thumb&lt;/span&gt;.&lt;span class="attr"&gt;DragDelta&lt;/span&gt;&lt;span class="kwrd"&gt;="Thumb_DragDelta"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
with:
&lt;/p&gt;
&lt;div class="gslb_rsbDivCodeSection"&gt;
&lt;div class="gslb_rsbDivCode" style="white-space: pre; font-family: Monospace;"&gt;&lt;span class="kwrd"&gt;void&lt;/span&gt; Thumb_DragDelta(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, &lt;span class="type"&gt;DragDeltaEventArgs&lt;/span&gt; e)
{
  &lt;span class="rem"&gt;// Do nothing for the moment&lt;/span&gt;
  Console.WriteLine(&lt;span class="str"&gt;"Thumb_DragDelta"&lt;/span&gt;);
}
&lt;/div&gt;
&lt;/div&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
Unfortunately, if we place a breakpoint inside the Thumb_DragDelta event handler, it is never reached, not even if you resize any column of the ListView. Why not? Well, when a routed event is handled by any control, it can be marked as "handled". This is done by setting the &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.routedeventargs.handled.aspx" target="_blank"&gt;RoutedEventArgs.Handled&lt;/a&gt; property to true inside the event handler.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
Fortunately, there is a way to tell the framework that we are interested in an event even if it has been marked as handled. We cannot do this in XAML, however, so just remove the Thumb.DragDelta from the XAML:
&lt;/p&gt;
&lt;div class="gslb_rsbDivCodeSection"&gt;
&lt;div class="gslb_rsbDivCode" style="white-space: pre; font-family: Monospace;"&gt;&lt;span class="kwrd"&gt;&amp;lt;&lt;/span&gt;&lt;span class="html"&gt;ListView&lt;/span&gt; &lt;span class="attr"&gt;x:Name&lt;/span&gt;&lt;span class="kwrd"&gt;="MyListView"&lt;/span&gt;
          &lt;span class="attr"&gt;IsSynchronizedWithCurrentItem&lt;/span&gt;&lt;span class="kwrd"&gt;="True"&lt;/span&gt;
          &lt;span class="attr"&gt;ItemsSource&lt;/span&gt;&lt;span class="kwrd"&gt;="{Binding Path=Items,
                                Mode=Default,
                                Source={StaticResource DataProvider}}"&lt;/span&gt;&lt;span class="kwrd"&gt;&amp;gt;&lt;/span&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
Instead, we will add an event handler in code behind. This is one of the few things that you cannot do in XAML!
&lt;/p&gt;
&lt;div class="gslb_rsbDivCodeSection"&gt;
&lt;div class="gslb_rsbDivCode" style="white-space: pre; font-family: Monospace;"&gt;public Window1()
{
  InitializeComponent();

  MyListView.AddHandler(&lt;span class="type"&gt;Thumb&lt;/span&gt;.DragDeltaEvent,
    new &lt;span class="type"&gt;DragDeltaEventHandler&lt;/span&gt;(Thumb_DragDelta),
    &lt;span class="kwrd"&gt;true&lt;/span&gt;);
}
&lt;/div&gt;
&lt;/div&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
Notice that the last parameter of the AddHandler override is set to "true": This is what indicates that we want to get notified when the DragDelta event "bubbles" to us, even if it has been marked handled before it reaches us. This time, if you run the application and resize a column, the event handler is executed and the breakpoint is reached.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
The last thing we need to do is to forbid the column to be resized under a minimum size, or above a maximum size. To do this, we need to do a few steps:
&lt;/p&gt;
&lt;ul class="gslb_rsbList"&gt;
&lt;li&gt;
Get the Thumb at the origin of the event. This is not the "sender" parameter, because the event handler is placed on the ListView. So even though the routed event originates on the Thumb, the "sender" is actually the ListView. However, there is another way to get the Thumb: The parameter "e" (of type &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.primitives.dragdeltaeventargs.aspx" target="_blank"&gt;DragDeltaEventArgs&lt;/a&gt;), like all RoutedEventArgs, contains a property named "&lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.routedeventargs.originalsource.aspx" target="_blank"&gt;OriginalSource&lt;/a&gt;". This is the Thumb we want!
&lt;/li&gt;
&lt;li&gt;
Then, we want to get the &lt;a href="http://msdn.microsoft.com/en-us/library/system.windows.controls.gridviewcolumnheader.aspx" target="_blank"&gt;GridViewColumnHeader&lt;/a&gt; containing the Thumb. Here too, we need to understand how the visual tree is built. All controls in WPF are essentially lookless, and the look&amp;amp;feel is created in a ControlTemplate, which is separate. We can, however, get the parent's template using the TemplatedParent property.
&lt;/li&gt;
&lt;li&gt;
We're almost there: Once we have the GridViewColumnHeader, all we need to do is get the Column it belongs to (conveniently exposed in the Column property), and set its Width to the minimum respectively maximum value we want to use. Translated in code, this is:
&lt;/li&gt;
&lt;/ul&gt;
&lt;div class="gslb_rsbDivCodeSection"&gt;
&lt;div class="gslb_rsbDivCode" style="white-space: pre; font-family: Monospace;"&gt;&lt;span class="kwrd"&gt;void&lt;/span&gt; Thumb_DragDelta(&lt;span class="kwrd"&gt;object&lt;/span&gt; sender, &lt;span class="type"&gt;DragDeltaEventArgs&lt;/span&gt; e)
{
  &lt;span class="type"&gt;Thumb&lt;/span&gt; senderAsThumb = e.OriginalSource &lt;span class="kwrd"&gt;as&lt;/span&gt; &lt;span class="type"&gt;Thumb&lt;/span&gt;;
  &lt;span class="type"&gt;GridViewColumnHeader&lt;/span&gt; header
    = senderAsThumb.TemplatedParent &lt;span class="kwrd"&gt;as&lt;/span&gt; &lt;span class="type"&gt;GridViewColumnHeader&lt;/span&gt;;
  &lt;span class="kwrd"&gt;if&lt;/span&gt; (header.Column.ActualWidth &amp;lt; MIN_WIDTH)
  {
    header.Column.Width = MIN_WIDTH;
  }
  &lt;span class="kwrd"&gt;if&lt;/span&gt; (header.Column.ActualWidth &amp;gt; MAX_WIDTH)
  {
    header.Column.Width = MAX_WIDTH;
  }
}
&lt;/div&gt;
&lt;/div&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
where MIN_WIDTH and MAX_WIDTH are two constants. We could as well use properties to be able to set these values from the outside.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
With this code, the column will be resizable up to a certain limit, and then the Thumb will stop moving. While it requires a good understanding of the inner works of a WPF control, this is not very complicated. It requires some code-behind, however, and cannot be done in pure XAML.
&lt;/p&gt;
&lt;p class="gslb_rsbPParagraph"&gt;
&lt;a href="http://www.galasoft.ch" target="_new" atomicselection="true"&gt;&lt;img alt="http://www.galasoft.ch" src="http://www.galasoft.ch/images/counter-blog-all.png" /&gt;&lt;/a&gt;
&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121934"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=121934" border="0"/&gt;&lt;/a&gt;&lt;/p&gt;&lt;iframe src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;PageID=31016&amp;amp;SiteID=1" width=1 height=1 Marginwidth=0 Marginheight=0 Hspace=0 Vspace=0 Frameborder=0 Scrolling=No&gt;
&lt;script language='javascript1.1' src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Browser=NETSCAPE4&amp;amp;NoCache=True&amp;PageID=31016&amp;amp;SiteID=1"&gt;&lt;/script&gt;
&lt;noscript&gt;&lt;a href="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Click&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" target="_blank"&gt;
&lt;img src="http://ads.geekswithblogs.net/a.aspx?ZoneID=5&amp;amp;Task=Get&amp;amp;Mode=HTML&amp;amp;SiteID=1&amp;amp;PageID=31016" width="1" height="1" border="0"  alt=""&gt;&lt;/a&gt;
&lt;/noscript&gt;
&lt;/iframe&gt;
&lt;img src="http://geekswithblogs.net/lbugnion/aggbug/121934.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Laurent Bugnion</dc:creator>
            <guid>http://geekswithblogs.net/lbugnion/archive/2008/05/06/wpf-listviewgridview-minimum-and-maximum-width-for-a-column.aspx</guid>
            <pubDate>Tue, 06 May 2008 17:05:12 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/lbugnion/comments/121934.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/lbugnion/archive/2008/05/06/wpf-listviewgridview-minimum-and-maximum-width-for-a-column.aspx#feedback</comments>
            <slash:comments>5</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/lbugnion/comments/commentRss/121934.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/lbugnion/services/trackbacks/121934.aspx</trackback:ping>
        </item>
    </channel>
</rss>