<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>Braulio Díez Botella</title>
        <link>http://geekswithblogs.net/braulio/Default.aspx</link>
        <description>blog</description>
        <language>en-US</language>
        <copyright>Braulio Díez Botella</copyright>
        <managingEditor>braulio.diez@gmail.com</managingEditor>
        <generator>Subtext Version 0.0.0.0</generator>
        <image>
            <title>Braulio Díez Botella</title>
            <url>http://geekswithblogs.net/images/RSS2Image.gif</url>
            <link>http://geekswithblogs.net/braulio/Default.aspx</link>
            <width>77</width>
            <height>60</height>
        </image>
        <item>
            <title>Textbox update binding on text changing</title>
            <link>http://geekswithblogs.net/braulio/archive/2009/10/02/textbox-update-binding-on-text-changing.aspx</link>
            <description>&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;When using binding and textboxes you can find a nasty surprise… binding entities get only updated when your textbox looses the focus… this can work for you in a lot of scenarios, but in some other not, e.g. What happens if you want to enable a Save button based on some fields being informed ?, or you want to implement an autosave functionality?… if you want to make it based on the standard behavior the user would have to tab over the textbox and things will get updated… &lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;Is there any workaround available? Yes, on this thread (&lt;a href="http://forums.silverlight.net/forums/p/103695/294102.aspx#294102"&gt;&lt;font color="#0000ff"&gt;http://forums.silverlight.net/forums/p/103695/294102.aspx#294102&lt;/font&gt;&lt;/a&gt;) found and interesting one (update the binding on the TextBoxchange event), but implementing this in every page could be a pain in the neck, so I have decided to create an extended version of TextBox control that includes this behavior by default:&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;    &lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;class&lt;/span&gt; &lt;span style="COLOR: #2b91af"&gt;TextBoxChangeExt&lt;/span&gt; : System.Windows.Controls.&lt;span style="COLOR: #2b91af"&gt;TextBox&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;    {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;        &lt;span style="COLOR: blue"&gt;public&lt;/span&gt; TextBoxChangeExt()&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;        {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;            &lt;span style="COLOR: blue"&gt;this&lt;/span&gt;.TextChanged += &lt;span style="COLOR: blue"&gt;new&lt;/span&gt; &lt;span style="COLOR: #2b91af"&gt;TextChangedEventHandler&lt;/span&gt;(TextBoxChangeExt_TextChanged);&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;        }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;        &lt;span style="COLOR: blue"&gt;void&lt;/span&gt; TextBoxChangeExt_TextChanged(&lt;span style="COLOR: blue"&gt;object&lt;/span&gt; sender, &lt;span style="COLOR: #2b91af"&gt;TextChangedEventArgs&lt;/span&gt; e)&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;        {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                &lt;span style="COLOR: green"&gt;// based on&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                &lt;span style="COLOR: green"&gt;// http://betaforums.silverlight.net/forums/t/103695.aspx&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                &lt;span style="COLOR: #2b91af"&gt;TextBox&lt;/span&gt; txCtl = (&lt;span style="COLOR: #2b91af"&gt;TextBox&lt;/span&gt;)sender;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                &lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (txCtl != &lt;span style="COLOR: blue"&gt;null&lt;/span&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                    &lt;span style="COLOR: blue"&gt;var&lt;/span&gt; be = txCtl.GetBindingExpression(&lt;span style="COLOR: #2b91af"&gt;TextBox&lt;/span&gt;.TextProperty);&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                    &lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (be != &lt;span style="COLOR: blue"&gt;null&lt;/span&gt;)&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                    {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                        be.UpdateSource();&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                    }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;                }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;        }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt"&gt;    }&lt;/span&gt;&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=135241"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=135241" 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/braulio/aggbug/135241.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Braulio Díez Botella</dc:creator>
            <guid>http://geekswithblogs.net/braulio/archive/2009/10/02/textbox-update-binding-on-text-changing.aspx</guid>
            <pubDate>Fri, 02 Oct 2009 06:13:54 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/braulio/comments/135241.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/braulio/archive/2009/10/02/textbox-update-binding-on-text-changing.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/braulio/comments/commentRss/135241.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/braulio/services/trackbacks/135241.aspx</trackback:ping>
        </item>
        <item>
            <title>StackPanel IsEnabled</title>
            <link>http://geekswithblogs.net/braulio/archive/2009/09/26/stackpanel-isenabled.aspx</link>
            <description>&lt;div style="MARGIN: 0cm 0cm 10pt"&gt; Sometimes you need to enable / disable all the controls that are inside a StackPanel or a Grid depending on some conditions… well it seems something pretty straight forward until you realize that these elements does not have available the &lt;em&gt;IsEnabled &lt;/em&gt;property …  ouch! What to do? Well… going control by control setting the &lt;em&gt;IsEnabled&lt;/em&gt; property is a pain in the neck, encapsulating that elements in an user control can be an elegant solution but doesn’t fit to all scenarios (maybe is just a simple layout, or you don’t have the time to make all that refactoring). Is there any easier solution?...&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;Today googling into the Silverlight forums found a nice workaround (&lt;a href="http://forums.silverlight.net/forums/t/85404.aspx"&gt;http://forums.silverlight.net/forums/t/85404.aspx&lt;/a&gt;) you can just wrap up your stackpanel or grid control inside a &lt;span style="COLOR: #1f497d"&gt;ContentControl&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;Let’s check how it works with a simple sample: We have the following layout / XAML:&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt" align="center"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;&lt;img alt="Simple form enabled" src="http://geekswithblogs.net/images/geekswithblogs_net/braulio/10360/r_StackPanel_e_1.jpg" /&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;        &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;StackPanel&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Orientation&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Vertical"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; HorizontalAlignment&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Center"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Margin&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="5"&amp;gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;        &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;            &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid.RowDefinitions&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;RowDefinition&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Height&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="20"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;RowDefinition&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Height&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="20"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid.RowDefinitions&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid.ColumnDefinitions&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;ColumnDefinition&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Width&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="70"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;ColumnDefinition&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Width&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="90"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid.ColumnDefinitions&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;TextBlock&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Text&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Fullname"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Row&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="0"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Column&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="0" /&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;TextBox&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Row&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="0"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Column&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="1"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;TextBlock&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Text&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Address"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Row&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="1"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Column&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="0"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;TextBox&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Row&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="1"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Column&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="1"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;            &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;            &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Button&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Content&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Update"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Margin&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="5"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Width&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="100"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;        &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;StackPanel&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;Let’s Wrap the stack panel with the content template and set it’s &lt;em&gt;IsEnabled&lt;/em&gt; property to false, gotcha !! we get the desired behavior with just two lines of code :).&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; COLOR: #a31515"&gt;ContentControl&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; COLOR: red"&gt; IsEnabled&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; COLOR: blue"&gt;="false"&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;        &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;StackPanel&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Orientation&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Vertical"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; HorizontalAlignment&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Center"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Margin&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="5"&amp;gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;        &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;            &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid.RowDefinitions&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;RowDefinition&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Height&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="20"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;RowDefinition&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Height&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="20"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid.RowDefinitions&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid.ColumnDefinitions&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;ColumnDefinition&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Width&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="70"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;ColumnDefinition&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Width&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="90"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid.ColumnDefinitions&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;TextBlock&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Text&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Fullname"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Row&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="0"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Column&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="0" /&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;TextBox&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Row&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="0"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Column&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="1"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;TextBlock&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Text&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Address"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Row&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="1"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Column&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="0"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;                &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;TextBox&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Row&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="1"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Grid.Column&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="1"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;            &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Grid&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;            &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;Button&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Content&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="Update"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Margin&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="5"&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: red"&gt; Width&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;="100"/&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;        &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;StackPanel&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: #a31515"&gt;    &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; COLOR: #a31515"&gt;ContentControl&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; COLOR: blue"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal" align="center"&gt;&lt;img alt="Form StackPanel IsEnabled False" src="http://geekswithblogs.net/images/geekswithblogs_net/braulio/10360/r_StackPanel_e_2.jpg" /&gt; &lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=135107"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=135107" 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/braulio/aggbug/135107.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Braulio Díez Botella</dc:creator>
            <guid>http://geekswithblogs.net/braulio/archive/2009/09/26/stackpanel-isenabled.aspx</guid>
            <pubDate>Sat, 26 Sep 2009 14:44:30 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/braulio/comments/135107.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/braulio/archive/2009/09/26/stackpanel-isenabled.aspx#feedback</comments>
            <slash:comments>1</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/braulio/comments/commentRss/135107.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/braulio/services/trackbacks/135107.aspx</trackback:ping>
        </item>
        <item>
            <title>Linking more than one Silverlight project to an existing ASP .net project</title>
            <link>http://geekswithblogs.net/braulio/archive/2009/08/24/linking-more-than-one-silverlight-project-to-an-existing-asp.aspx</link>
            <description>&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;When you create a new Silverlight project, VStudio asks you to add web site project  to host that Silverlight application, that’s great and a time saver: Visual Studio creates for you a new web project that contains the SL XAP application inside a folder called &lt;em&gt;ClientBin&lt;/em&gt;, each time you make changes in your SL project and compile that XAP on the web project will get updated.&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt" align="center"&gt;&lt;img alt="Default Sl linking" align="middle" src="http://geekswithblogs.net/images/geekswithblogs_net/braulio/10531/o_Pic1_Solution.jpg" /&gt;&lt;/p&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;So far so good… but what happens when you want to add more Silverlight projects and linked them to the current existing web project? (e.g. you have several widget projects, or you want to chop the app in several XAP’s and use asynchronous XAP load), one option is to do that on the wizard dialog that appears when creating the XAP… but if you are in the case of  integrating an existing project or you have just skipped that dialog…&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;If you google a bit you will find a bit confusing approach: a context menu option called “add linked server”, that doesn’t appear in your visual studio menu’s, What’s that? Well it’s an old CTP or Alpha approach to link a SL project to an existing web project, this options has been removed in the further releases of SL. What’s the right approach then? … Quite easy, just only need to know where’s now the option :):&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;Just click to show the properties of your web project.&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;Choose the Silverlight Applications Tab.&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;And click on Add to add the new Silverlight project.&lt;/div&gt;
&lt;p style="MARGIN: 0cm 0cm 10pt 54pt; TEXT-INDENT: -18pt" align="center"&gt;&lt;img alt="Project SL Properties" align="middle" src="http://geekswithblogs.net/images/geekswithblogs_net/braulio/10531/o_Pic2_Properties.jpg" /&gt;&lt;/p&gt;
&lt;/div&gt;
&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;/div&gt;
&lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=134284"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=134284" 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/braulio/aggbug/134284.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Braulio Díez Botella</dc:creator>
            <guid>http://geekswithblogs.net/braulio/archive/2009/08/24/linking-more-than-one-silverlight-project-to-an-existing-asp.aspx</guid>
            <pubDate>Mon, 24 Aug 2009 13:13:59 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/braulio/comments/134284.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/braulio/archive/2009/08/24/linking-more-than-one-silverlight-project-to-an-existing-asp.aspx#feedback</comments>
            <slash:comments>2</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/braulio/comments/commentRss/134284.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/braulio/services/trackbacks/134284.aspx</trackback:ping>
        </item>
        <item>
            <title>Interacting with Silverlight widgets on ASP .net 2.0, PHP, …</title>
            <link>http://geekswithblogs.net/braulio/archive/2009/08/11/interacting-with-silverlight-widgets-on-asp-.net-2.0-php.aspx</link>
            <description>&lt;p class="MsoNormal"&gt;When we develop our silverlight widget the sample page that we use normally is a nice servier side control called &lt;em style="mso-bidi-font-style: normal"&gt;asp:Silverlight&lt;/em&gt;, that’s quite nice if you use ASP .net 3.5 SP1, but… what if your widget has to run on ASP .net 2.0, or PHP, or a plain HTML page…&lt;/p&gt;
&lt;p class="MsoNormal"&gt;Well… the first thing to note down is just that &lt;em style="mso-bidi-font-style: normal"&gt;asp:Silverlight&lt;/em&gt; control is a nice server side control that is translated into HTML, no more no less. You can as well define directly an OBJECT tag and instantiate the control.&lt;/p&gt;
&lt;p class="MsoNormal"&gt;What are the main differences between the asp:Silverlight approach and the OBJECT approach?&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="MARGIN-LEFT: 54pt; TEXT-INDENT: -18pt; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-ascii-font-family: Calibri; mso-fareast-font-family: Calibri; mso-hansi-font-family: Calibri; mso-bidi-font-family: Calibri"&gt;&lt;span style="mso-list: Ignore"&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;The Object approach has a little bit more of work to declare it.&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN-LEFT: 54pt; TEXT-INDENT: -18pt; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-ascii-font-family: Calibri; mso-fareast-font-family: Calibri; mso-hansi-font-family: Calibri; mso-bidi-font-family: Calibri"&gt;&lt;span style="mso-list: Ignore"&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Both asp:Silverlight and Object have an OnLoad event but the signature of the event have different parameters.&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpLast" style="MARGIN-LEFT: 54pt; TEXT-INDENT: -18pt; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-ascii-font-family: Calibri; mso-fareast-font-family: Calibri; mso-hansi-font-family: Calibri; mso-bidi-font-family: Calibri"&gt;&lt;span style="mso-list: Ignore"&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;The way in which we get the instance of the Silverlight control running is different&lt;/p&gt;
&lt;p class="MsoNormal"&gt;So let’s see how this work on a real sample: &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;sometime ago I developed an open source widget called DB Schema Viewer (&lt;a href="http://dbschemaviewer.codeplex.com/"&gt;http://dbschemaviewer.codeplex.com/&lt;/a&gt;), I just need code to instantiate the control on a simple HTML page, and interact with the widget using javascript (e.g. loading a DB Schema or zooming), for this sample we are going to see how to expose the zoom operation to javascript (javascript calling a SL method), and how to instantiate the control in HTML, grab the instance running and call the scriptable SL method from js.&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;strong style="mso-bidi-font-weight: normal"&gt;First part exposing SL zoom operation to js&lt;o:p&gt;&lt;/o:p&gt;&lt;/strong&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;u&gt;Silverlight code.&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;We have to set our page class to scriptable:&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;[&lt;span style="COLOR: #2b91af"&gt;ScriptableType&lt;/span&gt;]&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;partial&lt;/span&gt; &lt;span style="COLOR: blue"&gt;class&lt;/span&gt; &lt;span style="COLOR: #2b91af"&gt;Page&lt;/span&gt; : &lt;span style="COLOR: #2b91af"&gt;UserControl&lt;/span&gt;, &lt;span style="COLOR: #2b91af"&gt;IViewMainPage&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;On the page load or app startup we have to register our plugin instance and give it a name&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: blue"&gt;private&lt;/span&gt; &lt;span style="COLOR: blue"&gt;void&lt;/span&gt; UserControl_Loaded(&lt;span style="COLOR: blue"&gt;object&lt;/span&gt; sender, &lt;span style="COLOR: #2b91af"&gt;RoutedEventArgs&lt;/span&gt; e)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;span style="COLOR: #2b91af"&gt;HtmlPage&lt;/span&gt;.RegisterScriptableObject(&lt;span style="COLOR: #a31515"&gt;"plDBSchemaViewer"&lt;/span&gt;, &lt;span style="COLOR: blue"&gt;this&lt;/span&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;Then we have to define the zooming method as script table&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;[&lt;span style="COLOR: #2b91af"&gt;ScriptableMember&lt;/span&gt;]&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;void&lt;/span&gt; ExecuteZoomOperation(&lt;span style="COLOR: blue"&gt;bool&lt;/span&gt; zoomIn)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;u&gt;HTML / Javascript Code&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;We start from the sample HTML page that a Silverlight project create for us and add a new parameter&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;(OnLoad):&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;div&lt;/span&gt; &lt;span style="COLOR: red"&gt;id&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="silverlightControlHost"&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;object&lt;/span&gt; &lt;span style="COLOR: red"&gt;id&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="plugin"&lt;/span&gt; &lt;span style="COLOR: red"&gt;data&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="data:application/x-silverlight-2,"&lt;/span&gt; &lt;span style="COLOR: red"&gt;type&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="application/x-silverlight-2"&lt;/span&gt; &lt;span style="COLOR: red"&gt;width&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="100%"&lt;/span&gt; &lt;span style="COLOR: red"&gt;height&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="100%"&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 1"&gt;                &lt;/span&gt;&lt;span style="mso-tab-count: 1"&gt;                &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;param&lt;/span&gt; &lt;span style="COLOR: red"&gt;name&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="source"&lt;/span&gt; &lt;span style="COLOR: red"&gt;value&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="./DBSchemaViewer.FrontEnd.Main.xap"/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 2"&gt;                                &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;param&lt;/span&gt; &lt;span style="COLOR: red"&gt;name&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="onError"&lt;/span&gt; &lt;span style="COLOR: red"&gt;value&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="onSilverlightError"&lt;/span&gt; &lt;span style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 2"&gt;                                &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;param&lt;/span&gt; &lt;span style="COLOR: red"&gt;name&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="background"&lt;/span&gt; &lt;span style="COLOR: red"&gt;value&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="white"&lt;/span&gt; &lt;span style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 2"&gt;                                &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;param&lt;/span&gt; &lt;span style="COLOR: red"&gt;name&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="minRuntimeVersion"&lt;/span&gt; &lt;span style="COLOR: red"&gt;value&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="3.0.40624.0"&lt;/span&gt; &lt;span style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 2"&gt;                                &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;param&lt;/span&gt; &lt;span style="COLOR: red"&gt;name&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="autoUpgrade"&lt;/span&gt; &lt;span style="COLOR: red"&gt;value&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="true"&lt;/span&gt; &lt;span style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 2"&gt;                                &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="BACKGROUND: yellow; COLOR: blue; mso-highlight: yellow"&gt;&amp;lt;&lt;/span&gt;&lt;span style="BACKGROUND: yellow; COLOR: #a31515; mso-highlight: yellow"&gt;param&lt;/span&gt;&lt;span style="BACKGROUND: yellow; mso-highlight: yellow"&gt; &lt;span style="COLOR: red"&gt;name&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="onLoad"&lt;/span&gt; &lt;span style="COLOR: red"&gt;value&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="pluginLoaded"&lt;/span&gt; &lt;span style="COLOR: blue"&gt;/&amp;gt;&lt;/span&gt;&lt;/span&gt;&lt;span style="COLOR: blue"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 2"&gt;                                &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;a&lt;/span&gt; &lt;span style="COLOR: red"&gt;href&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="http://go.microsoft.com/fwlink/?LinkID=149156&amp;amp;v=3.0.40624.0"&lt;/span&gt; &lt;span style="COLOR: red"&gt;style&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="text-decoration:none"&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;span style="mso-tab-count: 3"&gt;                                               &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;img&lt;/span&gt; &lt;span style="COLOR: red"&gt;src&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="http://go.microsoft.com/fwlink/?LinkId=108181"&lt;/span&gt; &lt;span style="COLOR: red"&gt;alt&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="Get Microsoft Silverlight"&lt;/span&gt; &lt;span style="COLOR: red"&gt;style&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="border-style:none"/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 2"&gt;                                &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;a&lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 1"&gt;                &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;object&lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;gt;&amp;lt;&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;iframe&lt;/span&gt; &lt;span style="COLOR: red"&gt;id&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="_sl_historyFrame"&lt;/span&gt; &lt;span style="COLOR: red"&gt;style&lt;/span&gt;&lt;span style="COLOR: blue"&gt;="&lt;/span&gt;&lt;span style="COLOR: red"&gt;visibility&lt;/span&gt;:&lt;span style="COLOR: blue"&gt;hidden&lt;/span&gt;;&lt;span style="COLOR: red"&gt;height&lt;/span&gt;:&lt;span style="COLOR: blue"&gt;0px&lt;/span&gt;;&lt;span style="COLOR: red"&gt;width&lt;/span&gt;:&lt;span style="COLOR: blue"&gt;0px&lt;/span&gt;;&lt;span style="COLOR: red"&gt;border&lt;/span&gt;:&lt;span style="COLOR: blue"&gt;0px"&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;iframe&lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="COLOR: #a31515"&gt;div&lt;/span&gt;&lt;span style="COLOR: blue"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;This event will be triggered once the Silverlight plugin has been instantiated and the widget is up and running.&lt;/p&gt;
&lt;p class="MsoNormal"&gt;In the pluginLoaded method we can get from the parameters an instance to the SL plugin (good to hold it in a member variable) and execute any initial interaction with the plugin:&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;// basic initialization plus instantiation&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;// this flag will indicate us whether the viewer is ready (downloaded and running)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;var&lt;/span&gt; viewer_Loaded = &lt;span style="COLOR: blue"&gt;false&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;var&lt;/span&gt; slCtl = &lt;span style="COLOR: blue"&gt;null&lt;/span&gt;;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;// -- This method is called by the SL application to notify the HTML page that the application&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;// has been download and is ready to run and receive commands&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;/// Just when the SL ctl is loaded this event is fired&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;/// For the ASP .net version&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;///&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;//&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;function pluginLoaded(sender) {&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;// ASPX version&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;//&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;slCtl = sender.get_element();&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;//&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;alert(slCtl.Content.mySLapp.MyToUpper("Test String"));&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: green"&gt;//&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;function&lt;/span&gt; pluginLoaded(sender, args) {&lt;span style="mso-spacerun: yes"&gt;      &lt;/span&gt;&lt;span style="COLOR: green"&gt;// HTML version&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;viewer_Loaded = &lt;span style="COLOR: blue"&gt;true&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;slCtl = sender.getHost(); &lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;   &lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;Now if we want to call from javascript the Silverlight zooming operation we only need to get from SlCtl the plugin instance the we have defined as scriptable in Sl, and call the zooming method:&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;function&lt;/span&gt; GetPluginInstance() {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: blue"&gt;var&lt;/span&gt; pluginInstance = &lt;span style="COLOR: blue"&gt;null&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (viewer_Loaded == &lt;span style="COLOR: blue"&gt;true&lt;/span&gt;) {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;pluginInstance = slCtl.Content.&lt;span style="BACKGROUND: yellow; mso-highlight: yellow"&gt;plDBSchemaViewer&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: blue"&gt;return&lt;/span&gt; pluginInstance&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;/span&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;function&lt;/span&gt; ZoomIn() {&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: blue"&gt;var&lt;/span&gt; pluginInstance = GetPluginInstance()&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;o:p&gt; &lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (pluginInstance)&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;pluginInstance.ExecuteZoomOperation(&lt;span style="COLOR: blue"&gt;true&lt;/span&gt;);&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN-BOTTOM: 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;&lt;span style="FONT-SIZE: 8pt; LINE-HEIGHT: 115%; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;One last thing, you will need to include the autogenerated &lt;em style="mso-bidi-font-style: normal"&gt;Silverlight.js&lt;/em&gt; file.&lt;/p&gt;
&lt;p class="MsoNormal"&gt;If you need more detailed info:&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpFirst" style="MARGIN-LEFT: 54pt; TEXT-INDENT: -18pt; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-ascii-font-family: Calibri; mso-fareast-font-family: Calibri; mso-hansi-font-family: Calibri; mso-bidi-font-family: Calibri"&gt;&lt;span style="mso-list: Ignore"&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Working sample: &lt;a href="http://dbschemaviewer.codeplex.com/"&gt;http://dbschemaviewer.codeplex.com&lt;/a&gt; &lt;u&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpMiddle" style="MARGIN-LEFT: 54pt; TEXT-INDENT: -18pt; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-ascii-font-family: Calibri; mso-fareast-font-family: Calibri; mso-hansi-font-family: Calibri; mso-bidi-font-family: Calibri"&gt;&lt;span style="mso-list: Ignore"&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;Detailed info: &lt;a href="http://msdn.microsoft.com/en-us/library/cc221414(VS.95).aspx"&gt;http://msdn.microsoft.com/en-us/library/cc221414(VS.95).aspx&lt;/a&gt; &lt;u&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/p&gt;
&lt;p class="MsoListParagraphCxSpLast" style="MARGIN-LEFT: 54pt; TEXT-INDENT: -18pt; mso-add-space: auto; mso-list: l0 level1 lfo1"&gt;&lt;span style="mso-ascii-font-family: Calibri; mso-fareast-font-family: Calibri; mso-hansi-font-family: Calibri; mso-bidi-font-family: Calibri"&gt;&lt;span style="mso-list: Ignore"&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;&lt;/span&gt;More about javascript and SL interaction: &lt;a href="http://www.mostlydevelopers.com/mostlydevelopers/blog/post/2008/08/11/Call-Javascript-Method-from-Silverlight-and-Vice-Versa.aspx"&gt;http://www.mostlydevelopers.com/mostlydevelopers/blog/post/2008/08/11/Call-Javascript-Method-from-Silverlight-and-Vice-Versa.aspx&lt;/a&gt; &lt;u&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/u&gt;&lt;/p&gt;
&lt;p class="MsoNormal"&gt;Now you are prepared to intregrate your SL widget on any web technology (at the end everything is ported to plain HTML and Javascript &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;&lt;span style="FONT-FAMILY: Wingdings; mso-ascii-font-family: Calibri; mso-hansi-font-family: Calibri; mso-ascii-theme-font: minor-latin; mso-hansi-theme-font: minor-latin; mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;&lt;span style="mso-char-type: symbol; mso-symbol-font-family: Wingdings"&gt;J&lt;/span&gt;&lt;/span&gt;).&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=134037"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=134037" 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/braulio/aggbug/134037.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Braulio Díez Botella</dc:creator>
            <guid>http://geekswithblogs.net/braulio/archive/2009/08/11/interacting-with-silverlight-widgets-on-asp-.net-2.0-php.aspx</guid>
            <pubDate>Tue, 11 Aug 2009 21:22:34 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/braulio/comments/134037.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/braulio/archive/2009/08/11/interacting-with-silverlight-widgets-on-asp-.net-2.0-php.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/braulio/comments/commentRss/134037.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/braulio/services/trackbacks/134037.aspx</trackback:ping>
        </item>
        <item>
            <title>Export Canvas to PNG and save it in your local folder</title>
            <link>http://geekswithblogs.net/braulio/archive/2009/07/12/export-canvas-to-png-and-save-it-in-your-local.aspx</link>
            <description>&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;** &lt;strong&gt;Just a last minute update&lt;/strong&gt;, from Arnoud: &lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;Found the ultimate Silverlight PNG encoder with zip-compression..&lt;br /&gt;
&lt;a href="http://www.codeplex.com/Wiki/View.aspx?ProjectName=imagetools"&gt;http://www.codeplex.com/Wiki/View.aspx?ProjectName=imagetools&lt;/a&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;And about the license, can be used for commercial purpose (check this thread: &lt;font face="Arial"&gt;&lt;a href="http://silverlight.net/forums/p/105680/250333.aspx#250333"&gt;http://silverlight.net/forums/p/105680/250333.aspx#250333&lt;/a&gt;)&lt;/font&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;And about... saving a canvas as PNG compressed:&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Arial"&gt;&lt;a href="http://imagetools.codeplex.com/Wiki/View.aspx?title=Write the content of a canvas to a file"&gt;http://imagetools.codeplex.com/Wiki/View.aspx?title=Write the content of a canvas to a file&lt;/a&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;Hope to get some extra time to create a new post with all this new updates :-).&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;**&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;One of the missing functionality of SL 2.0 was the ability to export a canvas content as an image and let the user save it to his local file storage. We had to use nasty tricks to implement that: rountrip to server side, draw again the content using GDI+ (server side) and dumping that in a bitmap…&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;In SL 3.0 they have incorporated:&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;A class called WriteableBitmap, that allows us dumping a canvas content into an image.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;A Save File Dialog that allows us to save the given image in the client’s local file system.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;But… it still has a limitation:&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;SL 3.0 does not implement code to save as PNG or JPEG.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt; &lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;Is there any solution for this? Well the thing is you can implement in SL an algorithm to save in such formats, pain in the… &lt;span style="FONT-FAMILY: Wingdings"&gt;J&lt;/span&gt; well we are lucky somebody has already done that for us.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;I have packed in a library the excellent work from:&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;Andy Beaulieu has implemented a class that get the writableBitmap content and encode in PNG format.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt"&gt;&lt;font face="Tahoma"&gt; &lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt"&gt;&lt;a href="http://www.andybeaulieu.com/Home/tabid/67/EntryID/161/Default.aspx"&gt;&lt;font face="Tahoma"&gt;http://www.andybeaulieu.com/Home/tabid/67/EntryID/161/Default.aspx&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt"&gt;&lt;font face="Tahoma"&gt; &lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;Tom Giam, code to grab that stream and save it to local.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 18pt; TEXT-INDENT: 36pt"&gt;&lt;a href="http://silverlight.net/forums/t/108713.aspx"&gt;&lt;font face="Tahoma"&gt;http://silverlight.net/forums/t/108713.aspx&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;Pete Brown: good concept explanation plus excellent support (interesting to read the comment section)&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 54pt"&gt;&lt;a href="http://community.irritatedvowel.com/blogs/pete_browns_blog/archive/2009/03/18/Silverlight-3-_1320_-The-Bitmap-API-_2F00_-WriteableBitmap.aspx"&gt;&lt;font face="Tahoma"&gt;http://community.irritatedvowel.com/blogs/pete_browns_blog/archive/2009/03/18/Silverlight-3-_1320_-The-Bitmap-API-_2F00_-WriteableBitmap.aspx&lt;/font&gt;&lt;/a&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;The library is called ImageExportLib, and how you can use it:&lt;/font&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;font size="1"&gt;            &lt;span style="COLOR: #2b91af"&gt;CanvasToPNG&lt;/span&gt; canvasToPNG = &lt;span style="COLOR: blue"&gt;new&lt;/span&gt; &lt;span style="COLOR: #2b91af"&gt;CanvasToPNG&lt;/span&gt;();&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;font size="1"&gt; &lt;/font&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;font size="1"&gt;            &lt;span style="COLOR: green"&gt;// It will export to PNG the canvas content&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;font size="1"&gt;            &lt;span style="COLOR: green"&gt;// parameter canvas ID&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;&lt;font size="1"&gt;            canvasToPNG.ShowSaveDialog(canvasToExport);&lt;/font&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt; &lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;About the sample: Draws some basic shapes and let’s you save it as PNG on your local file system:&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt; &lt;img height="335" alt="Sample application" width="400" align="middle" src="http://geekswithblogs.net/images/geekswithblogs_net/braulio/10363/r_postpng1.jpg" /&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;You can download the whole solution:&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;&lt;a href="http://www.tipsdotnet.com/Images/Canvas_To_PNG.zip"&gt;http://www.tipsdotnet.com/Images/Canvas_To_PNG.zip&lt;/a&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt; &lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Tahoma"&gt;Next Steps To do:&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;Check for FJCore to allow JPEG export.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;Check why is limited to 2047x2047 width and height&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;Define error handling (simple doesn’t capture exceptions).&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Tahoma"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;          &lt;/span&gt;&lt;/span&gt;Properly comment the code, based on the excellent info published by Andy and Tom.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 54pt"&gt; &lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 36pt"&gt; &lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133438"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133438" 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/braulio/aggbug/133438.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Braulio Díez Botella</dc:creator>
            <guid>http://geekswithblogs.net/braulio/archive/2009/07/12/export-canvas-to-png-and-save-it-in-your-local.aspx</guid>
            <pubDate>Sun, 12 Jul 2009 19:15:44 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/braulio/comments/133438.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/braulio/archive/2009/07/12/export-canvas-to-png-and-save-it-in-your-local.aspx#feedback</comments>
            <slash:comments>9</slash:comments>
            <wfw:commentRss>http://geekswithblogs.net/braulio/comments/commentRss/133438.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/braulio/services/trackbacks/133438.aspx</trackback:ping>
        </item>
        <item>
            <title>Extending autogenerated proxy entities</title>
            <link>http://geekswithblogs.net/braulio/archive/2009/07/11/extending-autogenerated-proxy-entities.aspx</link>
            <description>&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font size="2"&gt;When you add a WCF service referencein your Silverlight project you get for free a powerful autogenerated proxy: collections are ObservableCollection based, even the entities have already implemented the FireNotification on the set method ( it’s a good exercise to make a “go to definition” and explore the autogenerated classes code). &lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font size="2"&gt;All this is great but… what happens if you need to extend an autogenerated entity? Let’s say I have the following scenario:&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font size="2"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;&lt;font face="Arial"&gt;          &lt;/font&gt;&lt;/span&gt;&lt;/span&gt;A service provides me with a list of expected sales per quarter by product.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font size="2"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;&lt;font face="Arial"&gt;          &lt;/font&gt;&lt;/span&gt;&lt;/span&gt;I display this result on a grid.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font size="2"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;&lt;font face="Arial"&gt;          &lt;/font&gt;&lt;/span&gt;&lt;/span&gt;Now as a requirement I need to: &lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 90pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Arial"&gt;&lt;font size="2"&gt;&lt;span style="FONT-FAMILY: 'Courier New'"&gt;o&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;Add an extra column to the grid showing the totals by product.&lt;/font&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 90pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Arial"&gt;&lt;font size="2"&gt;&lt;span style="FONT-FAMILY: 'Courier New'"&gt;o&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;The expected sales entries are editable so if a given user introduces a new figure the totals by product associated cell should be automatically recalculated.&lt;/font&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 90pt; TEXT-INDENT: -18pt"&gt;&lt;font face="Arial"&gt;&lt;font size="2"&gt;&lt;span style="FONT-FAMILY: 'Courier New'"&gt;o&lt;span style="FONT: 7pt 'Times New Roman'"&gt;   &lt;/span&gt;&lt;/span&gt;Add a validation to the expected sales fields, negatives values are not allowed.&lt;/font&gt;&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font size="2"&gt;To do this we could try to modify the autogenerated clasess but each time we need to refresh the service reference we would lose our changes,  what can we do?&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font size="2"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;&lt;font face="Arial"&gt;          &lt;/font&gt;&lt;/span&gt;&lt;/span&gt;Create your own set of entity classes on the client side: I don’t like that approach, I’m to lazy to write all that plumbing, maybe for some scenarios could be a good idea.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt"&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font size="2"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;&lt;font face="Arial"&gt;          &lt;/font&gt;&lt;/span&gt;&lt;/span&gt;Create a new class that inherits from the entity class: still some work to do, castings…&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 0pt 36pt"&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 54pt; TEXT-INDENT: -18pt"&gt;&lt;font size="2"&gt;&lt;span&gt;-&lt;span style="FONT: 7pt 'Times New Roman'"&gt;&lt;font face="Arial"&gt;          &lt;/font&gt;&lt;/span&gt;&lt;/span&gt;&lt;strong&gt;Create a partial class that extends the current entity:&lt;/strong&gt; that’s my favorite, I only need to add a partial class definition and add the new properties and validations that I need.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font size="2"&gt;Let’s  solve the challenges that we are facing using the third approach.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font size="2"&gt;First, let’s say that our autogenerated entity class looks something like:&lt;/font&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'"&gt;    &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&gt;public&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt; &lt;span style="COLOR: blue"&gt;partial&lt;/span&gt; &lt;span style="COLOR: blue"&gt;class&lt;/span&gt; &lt;span style="COLOR: #2b91af"&gt;EntitySalesForecast&lt;/span&gt; : &lt;span style="COLOR: blue"&gt;object&lt;/span&gt;, System.ComponentModel.INotifyPropertyChanged &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;{&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        &lt;span style="COLOR: blue"&gt;private&lt;/span&gt; &lt;span style="COLOR: blue"&gt;double&lt;/span&gt; SalesQ1Field;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        [System.Runtime.Serialization.DataMemberAttribute()]&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        &lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;double&lt;/span&gt; SalesQ1 {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            &lt;span style="COLOR: blue"&gt;get&lt;/span&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                &lt;span style="COLOR: blue"&gt;return&lt;/span&gt; &lt;span style="COLOR: blue"&gt;this&lt;/span&gt;. SalesQ1Field;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            &lt;span style="COLOR: blue"&gt;set&lt;/span&gt; {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                &lt;span style="COLOR: blue"&gt;if&lt;/span&gt; ((&lt;span style="COLOR: blue"&gt;this&lt;/span&gt;. SalesQ1Field.Equals(&lt;span style="COLOR: blue"&gt;value&lt;/span&gt;) != &lt;span style="COLOR: blue"&gt;true&lt;/span&gt;)) {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="COLOR: blue"&gt;this&lt;/span&gt;. SalesQ1Field = &lt;span style="COLOR: blue"&gt;value&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="COLOR: blue"&gt;this&lt;/span&gt;.RaisePropertyChanged(&lt;span style="COLOR: #a31515"&gt;"SalesQ1"&lt;/span&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                 &lt;span style="COLOR: green"&gt;// (…) Sample implemetation for Q2, Q3, Q4…&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;    }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;For the “Add extra totals columns” requirement let’s create the partial class (same name as the autogenerated proxy class) and add a new property that just performs the sum calculations (this will extend our proxy generated class without losing changes when refreshing the service reference):&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;    &lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;partial&lt;/span&gt; &lt;span style="COLOR: blue"&gt;class&lt;/span&gt; &lt;span style="COLOR: #2b91af"&gt;EntitySalesForecast&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;    {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        &lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;double&lt;/span&gt; TotalSales&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            &lt;span style="COLOR: blue"&gt;get&lt;/span&gt; &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                &lt;span style="COLOR: blue"&gt;return&lt;/span&gt; (SalesQ1 + SalesQ2  + SalesQ3 +` SalesQ4); &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;    }&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt; &lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;We have the totalSales available to be binded and displayed by the grid.&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;Now comes a trickier part, we need to refresh the totals field whenever a Quarter entry changes, we cannot directly add a call to RaisePropertyChanges on the Totals sales for each quarter property because each quarter property been already implemented by the proxy, what we are going to do is to keep on extending the newly created partial class, and create a new property per quarter (for instance if we have Quarter1 let’s call it Quarter1Bindable) that would wrap the Quarter1 property and implement the additional functionality that we need… then on the presentation layer we will replace the old QuarterX binding with the new QuarterXBindable.&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; COLOR: blue; FONT-FAMILY: 'Arial','sans-serif'"&gt;public&lt;/span&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt; &lt;span style="COLOR: blue"&gt;partial&lt;/span&gt; &lt;span style="COLOR: blue"&gt;class&lt;/span&gt; &lt;span style="COLOR: #2b91af"&gt;EntitySalesForecast&lt;/span&gt; : &lt;span style="COLOR: blue"&gt;object&lt;/span&gt;, System.ComponentModel.INotifyPropertyChanged &lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;{&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;     &lt;span style="COLOR: green"&gt;// (…) Add to the previouls created partial class a property per quarter&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;     &lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;double&lt;/span&gt; SalesQ1 _ToBind&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            &lt;span style="COLOR: blue"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                &lt;span style="COLOR: blue"&gt;return&lt;/span&gt; SalesQ1;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            &lt;span style="COLOR: blue"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                &lt;span style="COLOR: blue"&gt;if&lt;/span&gt; ((SalesQ1.Equals(&lt;span style="COLOR: blue"&gt;value&lt;/span&gt;) != &lt;span style="COLOR: blue"&gt;true&lt;/span&gt;))&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                {                 &lt;/span&gt;&lt;/div&gt;
&lt;div style="TEXT-INDENT: 36pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;   SalesQ1Field = &lt;span style="COLOR: blue"&gt;value&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div style="TEXT-INDENT: 36pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;   &lt;span style="COLOR: green"&gt;// DataGrid cell binding to this field will get a notification to refresh the value displayed&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="COLOR: blue"&gt;this&lt;/span&gt;.RaisePropertyChanged(&lt;span style="COLOR: #a31515"&gt;"SalesQ1_ToBind"&lt;/span&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="COLOR: green"&gt;// Changes in a month entry... TotalSales calc field must be refreshed as well&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="BACKGROUND: yellow; COLOR: blue"&gt;this&lt;/span&gt;&lt;span style="BACKGROUND: yellow"&gt;.RaisePropertyChanged(&lt;span style="COLOR: #a31515"&gt;"TotalSales"&lt;/span&gt;);&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;     &lt;span style="COLOR: green"&gt;// (…)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Calibri"&gt;}&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font size="2"&gt;By doing this we kepp all the logic of the original property and expose a new property to the grid that will make the refresh totals calls whenever the user changes an entry.&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font size="2"&gt;Now that we have implemented this trick, implementing the “sales cannot be below zero” it’s easy just add the functionality to the QuarterXBindable:&lt;/font&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        &lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;double&lt;/span&gt; SalesQ1 _ToBind&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            &lt;span style="COLOR: blue"&gt;get&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                &lt;span style="COLOR: blue"&gt;return&lt;/span&gt; SalesQ1;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            &lt;span style="COLOR: blue"&gt;set&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                &lt;span style="COLOR: blue"&gt;if&lt;/span&gt; ((SalesQ1.Equals(&lt;span style="COLOR: blue"&gt;value&lt;/span&gt;) != &lt;span style="COLOR: blue"&gt;true&lt;/span&gt;))&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="BACKGROUND: yellow; COLOR: green"&gt;// Validations, exception will be handled by SL Error handling Arch (validation)&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (&lt;span style="COLOR: blue"&gt;value&lt;/span&gt; &amp;lt; 0)&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    {&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; FONT-FAMILY: 'Arial','sans-serif'"&gt;                        &lt;span style="COLOR: blue"&gt;throw&lt;/span&gt; &lt;span style="COLOR: blue"&gt;new&lt;/span&gt; &lt;span style="COLOR: #2b91af"&gt;Exception&lt;/span&gt;(&lt;span style="COLOR: #a31515"&gt;"Sales amount cannot be naegative."&lt;/span&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; BACKGROUND: yellow; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt; &lt;/div&gt;
&lt;div style="TEXT-INDENT: 36pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;   SalesQ1Field = &lt;span style="COLOR: blue"&gt;value&lt;/span&gt;;&lt;/span&gt;&lt;/div&gt;
&lt;div style="TEXT-INDENT: 36pt; LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;   &lt;span style="COLOR: green"&gt;// DataGrid cell binding to this field will get a notification to refresh the value displayed&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="COLOR: blue"&gt;this&lt;/span&gt;.RaisePropertyChanged(&lt;span style="COLOR: #a31515"&gt;"SalesQ1_ToBind"&lt;/span&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="COLOR: green"&gt;// Changes in a month entry... TotalSales calc field must be refreshed as well&lt;/span&gt;&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                    &lt;span style="COLOR: blue"&gt;this&lt;/span&gt;.RaisePropertyChanged(&lt;span style="COLOR: #a31515"&gt;"TotalSales"&lt;/span&gt;);&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;                }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;            }&lt;/span&gt;&lt;/div&gt;
&lt;div style="LINE-HEIGHT: normal"&gt;&lt;span style="FONT-SIZE: 8pt; FONT-FAMILY: 'Arial','sans-serif'"&gt;        }&lt;/span&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt; &lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font size="2"&gt;Again… keep the original quarter property as it is and extend functionality wrapping it up (of course in the grid you have to bind this new property).&lt;/font&gt;&lt;/div&gt;
&lt;div style="MARGIN: 0cm 0cm 10pt 54pt"&gt; &lt;/div&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133424"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133424" 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/braulio/aggbug/133424.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Braulio Díez Botella</dc:creator>
            <guid>http://geekswithblogs.net/braulio/archive/2009/07/11/extending-autogenerated-proxy-entities.aspx</guid>
            <pubDate>Sat, 11 Jul 2009 12:07:07 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/braulio/comments/133424.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/braulio/archive/2009/07/11/extending-autogenerated-proxy-entities.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/braulio/comments/commentRss/133424.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/braulio/services/trackbacks/133424.aspx</trackback:ping>
        </item>
        <item>
            <title>SL Calling same domain WCF located service zero configuration</title>
            <link>http://geekswithblogs.net/braulio/archive/2009/07/10/sl-calling-same-domain-wcf-located-service-zero-configuration.aspx</link>
            <description>&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Calibri" size="3"&gt;SL Calling same domain WCF located service zero configuration&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Calibri" size="3"&gt;Nice stuff… in my app’s I use to have a config.xml file associated to my Silverlight application, it included an entry to specify the root url to access the WCF services that I need to call in my app.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Calibri" size="3"&gt;It was a pain on the neck swapping between localhost and server mode (remember always to set the right config. Blah blah…), googling a bit I have found nice solution… why do you need to host that root url in a file? You already can grab it from the navigator that is browsing your page !!! this function works quite well:&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;o:p&gt;&lt;font face="Calibri" size="3"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&lt;font face="Arial"&gt;&lt;span style="COLOR: blue"&gt;public&lt;/span&gt; &lt;span style="COLOR: blue"&gt;string&lt;/span&gt; GetServiceProxyURL()&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;span style="COLOR: blue"&gt;string&lt;/span&gt; serviceBase = &lt;span style="COLOR: #a31515"&gt;""&lt;/span&gt;;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;font face="Arial"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;span style="COLOR: blue"&gt;if&lt;/span&gt; (&lt;span style="COLOR: #2b91af"&gt;Application&lt;/span&gt;.Current.Host.Source.Host.ToUpper() == &lt;span style="COLOR: #a31515"&gt;"LOCALHOST"&lt;/span&gt;)&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;           &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                    &lt;/span&gt;serviceBase = &lt;span style="COLOR: blue"&gt;string&lt;/span&gt;.Format(&lt;span style="COLOR: #a31515"&gt;"{0}://{1}:{2}"&lt;/span&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                        &lt;/span&gt;&lt;span style="COLOR: #2b91af"&gt;Application&lt;/span&gt;.Current.Host.Source.Scheme,&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                        &lt;/span&gt;&lt;span style="COLOR: #2b91af"&gt;Application&lt;/span&gt;.Current.Host.Source.Host,&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                        &lt;/span&gt;&lt;span style="COLOR: #2b91af"&gt;Application&lt;/span&gt;.Current.Host.Source.Port);&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;}&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;span style="COLOR: blue"&gt;else&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;{&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                    &lt;/span&gt;&lt;span style="COLOR: green"&gt;// include the appname in the path&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;string&lt;/span&gt; url = System.Windows.Browser.&lt;span style="COLOR: #2b91af"&gt;HtmlPage&lt;/span&gt;.Document.DocumentUri.AbsolutePath;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;string&lt;/span&gt;[] path = url.Split(&lt;span style="COLOR: #a31515"&gt;"/"&lt;/span&gt;.ToCharArray());&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                    &lt;/span&gt;&lt;span style="COLOR: blue"&gt;string&lt;/span&gt; appname = path[1];&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;font face="Arial"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                    &lt;/span&gt;serviceBase = &lt;span style="COLOR: blue"&gt;string&lt;/span&gt;.Format(&lt;span style="COLOR: #a31515"&gt;"{0}://{1}"&lt;/span&gt;,&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                        &lt;/span&gt;&lt;span style="COLOR: #2b91af"&gt;Application&lt;/span&gt;.Current.Host.Source.Scheme,&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;                        &lt;/span&gt;&lt;span style="COLOR: #2b91af"&gt;Application&lt;/span&gt;.Current.Host.Source.Host, appname);&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;font face="Arial"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;}&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;font face="Arial"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;      &lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;//Here you can add any subfolder if needede&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;span style="COLOR: green"&gt;//serviceBase += "/WsCommunicator/"; &lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;o:p&gt;&lt;font face="Arial"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;            &lt;/span&gt;&lt;span style="COLOR: blue"&gt;return&lt;/span&gt; serviceBase;&lt;span style="mso-spacerun: yes"&gt;                        &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: 'Courier New'; mso-no-proof: yes"&gt;&lt;font face="Arial"&gt;&lt;span style="mso-spacerun: yes"&gt;        &lt;/span&gt;}&lt;span style="mso-spacerun: yes"&gt;       &lt;/span&gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/font&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;o:p&gt;&lt;font size="2"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133416"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133416" 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/braulio/aggbug/133416.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Braulio Díez Botella</dc:creator>
            <guid>http://geekswithblogs.net/braulio/archive/2009/07/10/sl-calling-same-domain-wcf-located-service-zero-configuration.aspx</guid>
            <pubDate>Fri, 10 Jul 2009 20:59:22 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/braulio/comments/133416.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/braulio/archive/2009/07/10/sl-calling-same-domain-wcf-located-service-zero-configuration.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/braulio/comments/commentRss/133416.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/braulio/services/trackbacks/133416.aspx</trackback:ping>
        </item>
        <item>
            <title>Silverlight Service calls errors on URL without WWW</title>
            <link>http://geekswithblogs.net/braulio/archive/2009/07/10/133414.aspx</link>
            <description>&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Calibri"&gt;One of the SL app’s that I have developed (&lt;/font&gt;&lt;a href="http://www.dbschemaeditor.com/"&gt;&lt;font face="Calibri"&gt;http://www.dbschemaeditor.com&lt;/font&gt;&lt;/a&gt;&lt;font face="Calibri"&gt;) calls services that are located on the sames domain… so far so good.&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Calibri"&gt;Some weeks ago&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;a user was complaining that in some occasions the application thrown a “Connection failed” message whenever he tried to login, … researching a bit on the issue I found that the user was typing in the url address&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;dbschemaeditor.com (no WWW), what happens in this case? &lt;span style="mso-spacerun: yes"&gt; &lt;/span&gt;It’s treated as a cross domain call !! (request for clientaccesspolicy.xml and ding dong&lt;span style="mso-spacerun: yes"&gt;  &lt;/span&gt;… error !).&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Calibri"&gt;Maybe to solve this you can configure something at IIS level (redirect or whatever), in my case I’m running the app in a shared hosting… I found a quick (and dirty?) solution… add a clientaccesspolicy file (site root) enabling explicitly access to the url dbschemaeditor.com (no WWW):&lt;/font&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;lt;?&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;xml&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt; &lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;version&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;=&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;"&lt;span style="COLOR: blue"&gt;1.0&lt;/span&gt;"&lt;span style="COLOR: blue"&gt; &lt;/span&gt;&lt;span style="COLOR: red"&gt;encoding&lt;/span&gt;&lt;span style="COLOR: blue"&gt;=&lt;/span&gt;"&lt;span style="COLOR: blue"&gt;utf-8&lt;/span&gt;"&lt;span style="COLOR: blue"&gt; ?&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;access-policy&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 1"&gt;      &lt;/span&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;cross-domain-access&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 2"&gt;            &lt;/span&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;policy&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 3"&gt;                  &lt;/span&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;allow-from&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt; &lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;http-request-headers&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;=&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;"&lt;span style="COLOR: blue"&gt;SOAPAction&lt;/span&gt;"&lt;span style="COLOR: blue"&gt; &amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 3"&gt;                  &lt;/span&gt;&lt;span style="mso-spacerun: yes"&gt;    &lt;/span&gt;&amp;lt;!--&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: green; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt; Just include the same domain without wwww&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;--&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 4"&gt;                        &lt;/span&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;domain&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt; &lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;uri&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;=&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;"&lt;span style="COLOR: blue"&gt;http://dbschemaeditor.com/&lt;/span&gt;"&lt;span style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 3"&gt;                  &lt;/span&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;allow-from&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 3"&gt;                  &lt;/span&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;grant-to&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 4"&gt;                        &lt;/span&gt;&amp;lt;&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;resource&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt; &lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: red; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;include-subpaths&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;=&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;"&lt;span style="COLOR: blue"&gt;true&lt;/span&gt;"&lt;span style="COLOR: blue"&gt; &lt;/span&gt;&lt;span style="COLOR: red"&gt;path&lt;/span&gt;&lt;span style="COLOR: blue"&gt;=&lt;/span&gt;"&lt;span style="COLOR: blue"&gt;/&lt;/span&gt;"&lt;span style="COLOR: blue"&gt;/&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 3"&gt;                  &lt;/span&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;grant-to&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 2"&gt;            &lt;/span&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;policy&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&lt;span style="mso-tab-count: 1"&gt;      &lt;/span&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;cross-domain-access&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 0pt; LINE-HEIGHT: normal; mso-layout-grid-align: none"&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;lt;/&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: #a31515; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;access-policy&lt;/span&gt;&lt;span style="FONT-SIZE: 10pt; COLOR: blue; FONT-FAMILY: &amp;quot;Courier New&amp;quot;; mso-no-proof: yes"&gt;&amp;gt;&lt;o:p&gt;&lt;/o:p&gt;&lt;/span&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;o:p&gt;&lt;font face="Calibri"&gt; &lt;/font&gt;&lt;/o:p&gt;&lt;/p&gt;
&lt;p class="MsoNormal" style="MARGIN: 0cm 0cm 10pt"&gt;&lt;font face="Calibri"&gt;That worked out for the SL service calls.&lt;/font&gt;&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133414"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133414" 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/braulio/aggbug/133414.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Braulio Díez Botella</dc:creator>
            <guid>http://geekswithblogs.net/braulio/archive/2009/07/10/133414.aspx</guid>
            <pubDate>Fri, 10 Jul 2009 13:11:17 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/braulio/comments/133414.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/braulio/archive/2009/07/10/133414.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/braulio/comments/commentRss/133414.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/braulio/services/trackbacks/133414.aspx</trackback:ping>
        </item>
        <item>
            <title>Posting again on Geeks with Blogs, this time just Silverlight</title>
            <link>http://geekswithblogs.net/braulio/archive/2009/07/06/133289.aspx</link>
            <description>&lt;p&gt;I got a &lt;strong&gt;MVP award from Microsoft on Silverlight&lt;/strong&gt;. Altough I already manage a generic .net site + blog (tipsdotnet.com), I have decided to reopen my blog here at Geek with blogs just to talk about Silverlight.&lt;/p&gt;
&lt;p&gt;Hope to start posting soon interesting stuff :-).&lt;/p&gt;&lt;p&gt;&lt;a href="http://www.pheedo.com/click.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133289"&gt;&lt;img src="http://www.pheedo.com/img.phdo?x=6cda6ad746d942b9a1110d0715a4fa12&amp;u=133289" 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/braulio/aggbug/133289.aspx" width="1" height="1" /&gt;</description>
            <dc:creator>Braulio Díez Botella</dc:creator>
            <guid>http://geekswithblogs.net/braulio/archive/2009/07/06/133289.aspx</guid>
            <pubDate>Mon, 06 Jul 2009 12:39:35 GMT</pubDate>
            <wfw:comment>http://geekswithblogs.net/braulio/comments/133289.aspx</wfw:comment>
            <comments>http://geekswithblogs.net/braulio/archive/2009/07/06/133289.aspx#feedback</comments>
            <wfw:commentRss>http://geekswithblogs.net/braulio/comments/commentRss/133289.aspx</wfw:commentRss>
            <trackback:ping>http://geekswithblogs.net/braulio/services/trackbacks/133289.aspx</trackback:ping>
        </item>
    </channel>
</rss>