<?xml version="1.0" encoding="UTF-8" ?>
<?xml-stylesheet type="text/xsl" href="http://blogs.msdn.com/utility/FeedStylesheets/atom.xsl" media="screen"?><feed xmlns="http://www.w3.org/2005/Atom" xml:lang="en-US"><title type="html">&amp;lt;msdn:Blog id="jepper" runat="msdn" /&amp;gt;</title><subtitle type="html">Snep's NET</subtitle><id>http://blogs.msdn.com/jepper/atom.xml</id><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/default.aspx" /><link rel="self" type="application/atom+xml" href="http://blogs.msdn.com/jepper/atom.xml" /><generator uri="http://communityserver.org" version="2.1.61025.2">Community Server</generator><updated>2007-03-07T09:17:00Z</updated><entry><title>Silverlight dag i Cinemaxx i Århus og København - downloads + det løse</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/09/03/silverlight-dag-i-cinemaxx-i-rhus-og-k-benhavn-downloads-det-l-se.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/09/03/silverlight-dag-i-cinemaxx-i-rhus-og-k-benhavn-downloads-det-l-se.aspx</id><published>2007-09-04T00:10:00Z</published><updated>2007-09-04T00:10:00Z</updated><content type="html">&lt;P&gt;Howdy howdy :o)&lt;BR&gt;&lt;BR&gt;I sidste uge fik vi jo afholdt vores &lt;A class="" href="http://silverlight.net/Default.aspx" target=_blank mce_href="http://silverlight.net/Default.aspx"&gt;Silverlight&lt;/A&gt; introduktionsdag i hhv. Århus (om tirsdagen), og i København (om torsdagen), og det var Martin Eiler (Valtech), &lt;A class="" href="http://www.hartvig.com/" target=_blank mce_href="http://www.hartvig.com/"&gt;Niels Hartvig&lt;/A&gt;&amp;nbsp;(Umbraco) havde æren af at holde mikrofonen (eller rettere... Det er sådan en ståltrådsdimmer man skal snurre rundt om hovedet, så den på yderst irreterende vis kommer&amp;nbsp;op at slås&amp;nbsp;med ens brillestænger), &lt;BR&gt;&lt;BR&gt;Vi havde delt dagen op i 4 bidder (3 om Silverlight 1.0, og&amp;nbsp;1 om Silverlight 1.1), og vi viste lidt forskellige eksempler undervejs. Eksemplerne mv. bliver lagt op på &lt;A class="" href="http://www.microsoft.com/danmark/msdn/events/archive.mspx" target=_blank mce_href="http://www.microsoft.com/danmark/msdn/events/archive.mspx"&gt;MSDN&lt;/A&gt; inden for rimelig tid (forhåbentlig i løbet af ugen), men indtil da kan mine egne bidrag hentes her:&lt;BR&gt;&lt;BR&gt;&lt;A class="" href="http://www.itjek.net/download/silverlightpresentation.zip" target=_blank mce_href="http://www.itjek.net/download/silverlightpresentation.zip"&gt;Powerpoint-præsentationen for første og fjerde session.&lt;/A&gt;&lt;BR&gt;&lt;A class="" href="http://www.itjek.net/download/Silverlight1.0Demos.zip" target=_blank mce_href="http://www.itjek.net/download/Silverlight1.0Demos.zip"&gt;Silverlight 1.0 demo'er.&lt;/A&gt;&lt;BR&gt;&lt;A class="" href="http://www.itjek.net/download/Silverlight1.1Demos.zip" target=_blank mce_href="http://www.itjek.net/download/Silverlight1.1Demos.zip"&gt;Silverlight 1.1 demo'er.&lt;/A&gt;&lt;BR&gt;&lt;BR&gt;Og bare sådan lige for god ro og ordens skyld, så kan du selvfølgelig bruge det som du har lyst til&amp;nbsp;- både slides og demo'er :o)&lt;BR&gt;&lt;BR&gt;Jeg viste også et par af de eksempler der er lagt til download på Silverlight udviklersiden, og der ligger mange andre du kan bruge som inspiration, hvis du vil igang med lege lidt med Silverlight.&lt;BR&gt;&lt;A class="" href="http://silverlight.net/themes/silverlight/community/gallerydetail.aspx?cat=3" target=_blank mce_href="http://silverlight.net/themes/silverlight/community/gallerydetail.aspx?cat=3"&gt;Silverlight 1.0 eksempler.&lt;/A&gt;&lt;BR&gt;&lt;A class="" href="http://silverlight.net/themes/silverlight/community/gallerydetail.aspx?cat=4" target=_blank mce_href="http://silverlight.net/themes/silverlight/community/gallerydetail.aspx?cat=4"&gt;Silverlight 1.1 eksempler.&lt;/A&gt;&lt;BR&gt;&lt;BR&gt;Som jeg fortalte har vi planer om at lave en 2-3 TectTalks omkring Silverlight, hvor vi går lidt mere i dybden med specifikke dele af teknologien. Jeg har allerede fået et par forslag ind som kunne være relevante at tage fat på, men hvis der er&amp;nbsp;forhold du godt kunne ønske dig blev behandlet, synes jeg du skal lægge en kommentar om det her, så de kan komme med i puljen.&lt;BR&gt;&lt;BR&gt;Mange tak til Martin og Niels for jeres indsats - det var superfedt at i kunne (og ville) afse tid til at komme og fortælle om jeres&amp;nbsp;erfaringer med Silverlight, og jeg håber vi snart ses igen :o)&lt;BR&gt;&lt;BR&gt;Og til alle jer der deltog... Det var fedt i kom - det havde bestemt ikke været det samme&amp;nbsp;uden jer ;o)&lt;BR&gt;&lt;BR&gt;Og så var der lige en sidste ting... Som vanligt når vi holder den slags arrangementer var det &lt;A class="" href="http://www.seelite.dk/" target=_blank mce_href="http://www.seelite.dk/"&gt;Seelite&lt;/A&gt; der stod for teknikken, og om torsdagen havde de sågar hanket op i en harddisk recorder - så vi burde modtage et dump af lyd og billede en af de nærmeste dage, og jeg håber vi kan finde et par highlights imellem (som f.eks. Niels der forklarer hvad sådan et Powerpoint fjernbetjenings device i virkeligheden hedder ;o)... Jeg skal nok lægge et par teasere ud her, hvis kvaliteten på pladerne er til det :o)&lt;BR&gt;&lt;BR&gt;Mvh&lt;BR&gt;Jeppe&amp;nbsp;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=4729244" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET/default.aspx" /><category term="Silverlight" scheme="http://blogs.msdn.com/jepper/archive/tags/Silverlight/default.aspx" /><category term="Arrangementer" scheme="http://blogs.msdn.com/jepper/archive/tags/Arrangementer/default.aspx" /></entry><entry><title>Quiz : ViewState - Trin2</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/07/11/quiz-viewstate-trin2.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/07/11/quiz-viewstate-trin2.aspx</id><published>2007-07-12T00:05:00Z</published><updated>2007-07-12T00:05:00Z</updated><content type="html">&lt;p&gt;Nu skrev Nicolai jo ganske rigtig, at der ikke renderes noget til __VIEWSTATE i eksemplerne skrevet i &lt;a class="" href="http://blogs.msdn.com/jepper/archive/2007/07/02/quiz-viewstate-hvordan-var-det-nu-lige-det-var.aspx" target="_blank" mce_href="http://blogs.msdn.com/jepper/archive/2007/07/02/quiz-viewstate-hvordan-var-det-nu-lige-det-var.aspx"&gt;trin1 af denne ViewState quiz&lt;/a&gt;, men det er jo en smule sært er det ikke?!?&lt;br&gt;&lt;br&gt;Hvis vi kigger på implementeringen af .Text på en TextBox, ser den sådan her ud:&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:3b55c909-af5e-4292-8380-97b174ed77ff" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;public&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;virtual&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt; set_Text(&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;string&lt;/span&gt;&lt;span style="color: #000000; "&gt; value)
{
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;this&lt;/span&gt;&lt;span style="color: #000000; "&gt;.ViewState[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;Text&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; value;
}
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;ViewState er altså backend for bemeldte property, hvilket vil sige, at .Text ALTID skrives til ViewState, men det renderes IKKE til __VIEWSTATE - Hva' fa'en er nu det for noget kludder?!?&lt;br&gt;&lt;br&gt;Well... hele idéen med denne quiz er sådan set, at vi skal have afkludret det, og finde ud af hvad det er der foregår, og hvad det&amp;nbsp;kan være rart&amp;nbsp;at&amp;nbsp;være bekendt&amp;nbsp;når man&amp;nbsp;arbejder med diverse ASP.NET kontroller.&lt;br&gt;&lt;br&gt;At TextBox'ens indhold kan findes i ens formscollection (som Nicolai skrev) er selvfølgelig helt korrekt, men det medfører ikke at det er uinteressant at gemme indholdet af .Text i __VIEWSTATE, for hele pointen er, at det der ligger i __VIEWSTATE er det der viser hvordan verden så ud da siden blev renderet, og ikke hvordan verden ser ud når siden rammer serveren igen (hvor indholdet jo kan læses direkte i input-felterne) - og hvornår er det overhovedet interessant... Altså både at kende initialværdien (fra __VIEWSTATE-&amp;gt;ViewState), og den nuværende værdi (fra formscollection)?&lt;br&gt;&lt;br&gt;Det kan det være i flere situationer, så&amp;nbsp;her kommer en udvidelse af&amp;nbsp;de tidligere viste eksempler&amp;nbsp;som vil vise én af dem.&lt;/p&gt;
&lt;p&gt;1)&lt;br&gt;Følgende markup:&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:866e89ce-6232-482d-9fa8-dbb79994b466" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;asp:TextBox &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;ID&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;t0&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; runat&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;server&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; Text&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;En masse tekst&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; OnTextChanged&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;t0_TextChanged&amp;quot;&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;asp:TextBox&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;2)&lt;br&gt;Følgende markup:&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:16c9ba82-cd4e-40f9-ae39-3138189240e3" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color: white"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000ff"&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:TextBox &lt;/span&gt;&lt;span style="color: #ff0000"&gt;ID&lt;/span&gt;&lt;span style="color: #0000ff"&gt;="t1"&lt;/span&gt;&lt;span style="color: #ff0000"&gt; runat&lt;/span&gt;&lt;span style="color: #0000ff"&gt;="server"&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000"&gt;asp:TextBox&lt;/span&gt;&lt;span style="color: #0000ff"&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Og følgende kode:&lt;br&gt;&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:8c899c68-2777-47bc-b9bf-477ed75bd4f9" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;protected&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt; Page_Load(&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;object&lt;/span&gt;&lt;span style="color: #000000; "&gt; sender, EventArgs e)
{
    t1.Text &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;En masse tekst&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;        
    t1.TextChanged &lt;/span&gt;&lt;span style="color: #000000; "&gt;+=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;new&lt;/span&gt;&lt;span style="color: #000000; "&gt; EventHandler(t1_TextChanged);&lt;/span&gt;&lt;span style="color: #000000; "&gt;'
&lt;/span&gt;&lt;span style="color: #000000; "&gt;}
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;3)&lt;/p&gt;
&lt;p&gt;Følgende kode:&amp;nbsp;&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:c0159e87-a854-444f-a4c2-53645365c8bc" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;protected&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt; Page_Load(&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;object&lt;/span&gt;&lt;span style="color: #000000; "&gt; sender, EventArgs e)
{
    t2.Text &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;En masse tekst&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
}

&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;protected&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;override&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt; OnInit(EventArgs e)
{
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;base&lt;/span&gt;&lt;span style="color: #000000; "&gt;.OnInit(e);
    t2 &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;new&lt;/span&gt;&lt;span style="color: #000000; "&gt; TextBox();
    t2.ID &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;t2&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    t2.TextChanged &lt;/span&gt;&lt;span style="color: #000000; "&gt;+=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;new&lt;/span&gt;&lt;span style="color: #000000; "&gt; EventHandler(t2_TextChanged);
    form1.Controls.Add(t2);
}&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;4)&lt;br&gt;Følgende kode:&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:3b166f97-85f1-4281-9f47-5d8d72e32bf5" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;protected&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt; Page_Load(&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;object&lt;/span&gt;&lt;span style="color: #000000; "&gt; sender, EventArgs e)
{
    TextBox t3 &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;new&lt;/span&gt;&lt;span style="color: #000000; "&gt; TextBox();
    t3.ID &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;t3&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    t3.Text &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;En masse tekst&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    t3.TextChanged &lt;/span&gt;&lt;span style="color: #000000; "&gt;+=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;new&lt;/span&gt;&lt;span style="color: #000000; "&gt; EventHandler(t3_TextChanged);
    form1.Controls.Add(t3);
}
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;5)&lt;br&gt;Følgende kode:&lt;/p&gt;
&lt;p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:36f19706-680a-41d0-a730-ed60f5c02561" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;protected&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt; Page_Load(&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;object&lt;/span&gt;&lt;span style="color: #000000; "&gt; sender, EventArgs e)
{
    TextBox t4 &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;new&lt;/span&gt;&lt;span style="color: #000000; "&gt; TextBox();
    t4.ID &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;t4&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    form1.Controls.Add(t4);
    t4.TextChanged &lt;/span&gt;&lt;span style="color: #000000; "&gt;+=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;new&lt;/span&gt;&lt;span style="color: #000000; "&gt; EventHandler(t4_TextChanged);
    t4.Text &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;En masse tekst&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
}
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Et eller andet sted giver det en vis grad af mening, at det at man abbonnerer på hændelsen at indholdet i en TextBox ændrer sig, medfører et rimeligt behov for at kende både initialtilstanden, og den nuværende tilstand. Hvis der ikke abbonneres på hændelsen, er der faktisk ingen grund til nogensinde at gemme initialtilstanden i __VIEWSTATE - kun den aktuelle værdi er interessant, og det er noget som TextBox'en selv står for.&lt;/p&gt;
&lt;p&gt;Som der blev skrevet om i "sidste afsnit" kalder frameworket SaveViewState på kontrollerne i kontroltræet inden siden renderes. SaveViewState er en virtuel metode på Control-klassen, og en TextBox har sin egen implementering som følger:&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:3eb36cd8-c25f-47b7-aa12-dd75dac1aaff" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;protected&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;override&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;object&lt;/span&gt;&lt;span style="color: #000000; "&gt; SaveViewState()
{
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;if&lt;/span&gt;&lt;span style="color: #000000; "&gt; (&lt;/span&gt;&lt;span style="color: #000000; "&gt;!&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;this&lt;/span&gt;&lt;span style="color: #000000; "&gt;.SaveTextViewState)
    {
        &lt;/span&gt;&lt;span style="color: #008000; "&gt;//&lt;/span&gt;&lt;span style="color: #008000; "&gt; implementeringen her kommer vi til senere&lt;/span&gt;&lt;span style="color: #008000; "&gt;
&lt;/span&gt;&lt;span style="color: #000000; "&gt;    }
    kald til basen
}

&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;private&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;bool&lt;/span&gt;&lt;span style="color: #000000; "&gt; SaveTextViewState
{
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;get&lt;/span&gt;&lt;span style="color: #000000; "&gt;
    {
        &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;if&lt;/span&gt;&lt;span style="color: #000000; "&gt; (&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;this&lt;/span&gt;&lt;span style="color: #000000; "&gt;.TextMode &lt;/span&gt;&lt;span style="color: #000000; "&gt;==&lt;/span&gt;&lt;span style="color: #000000; "&gt; TextBoxMode.Password)
        {
            &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;return&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;false&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
        }
        &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;if&lt;/span&gt;&lt;span style="color: #000000; "&gt; (((&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;base&lt;/span&gt;&lt;span style="color: #000000; "&gt;.Events[EventTextChanged] &lt;/span&gt;&lt;span style="color: #000000; "&gt;==&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;null&lt;/span&gt;&lt;span style="color: #000000; "&gt;) &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;base&lt;/span&gt;&lt;span style="color: #000000; "&gt;.IsEnabled) &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span style="color: #000000; "&gt; ((&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;this&lt;/span&gt;&lt;span style="color: #000000; "&gt;.Visible &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;!&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;this&lt;/span&gt;&lt;span style="color: #000000; "&gt;.ReadOnly) &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;amp;&amp;amp;&lt;/span&gt;&lt;span style="color: #000000; "&gt; (&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;base&lt;/span&gt;&lt;span style="color: #000000; "&gt;.GetType() &lt;/span&gt;&lt;span style="color: #000000; "&gt;==&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;typeof&lt;/span&gt;&lt;span style="color: #000000; "&gt;(TextBox))))
        {
            &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;return&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;false&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
        }
        &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;return&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;true&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    }
}
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Læg mærke til at der bl.a. spørges på &lt;br&gt;base.Events[EventTextChanged] == null&lt;br&gt;Hvilket vil være tilfældet hvis der ikke er abbonneret på TextBox'en TextChanged-event, hvilket så altså resulterer i at .Text ikke skrives til __VIEWSTATE.&lt;/p&gt;
&lt;p&gt;Men nu et par spørgsmål til :o)&lt;/p&gt;
&lt;p&gt;1)&lt;br&gt;Når nu&amp;nbsp;vi på alle&amp;nbsp;TextBox'e har abbonneret på TextChanged... Vil de så alle få renderet&amp;nbsp;.Text&amp;nbsp;til&amp;nbsp;__VIEWSTATE?&lt;br&gt;Og hvis ikke - hvilke vil så IKKE ske for?&lt;/p&gt;
&lt;p&gt;2)&lt;br&gt;Hvis teksten ændres i alle TextBox'e, og der sker et postback, vil det så ændre hvilke TextBoxe der&amp;nbsp;får renderet&amp;nbsp;.Text til __VIEWSTATE?&lt;/p&gt;
&lt;p&gt;3)&lt;br&gt;Vil 4 og 5 opføre sig forskelligt? Og i givet fald - hvorfor?&lt;/p&gt;
&lt;p&gt;Mvh&lt;br&gt;Jeppe&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3819780" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET AJAX" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET+AJAX/default.aspx" /><category term="Quiz" scheme="http://blogs.msdn.com/jepper/archive/tags/Quiz/default.aspx" /></entry><entry><title>Quiz : ViewState - hvordan var det nu lige det var med det?!?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/07/02/quiz-viewstate-hvordan-var-det-nu-lige-det-var.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/07/02/quiz-viewstate-hvordan-var-det-nu-lige-det-var.aspx</id><published>2007-07-02T13:35:00Z</published><updated>2007-07-02T13:35:00Z</updated><content type="html">&lt;P&gt;Se... Nu rammer vi jo så en lille utrilstrækkelighed ved quiz'er på nettet :o)&lt;BR&gt;Det er nemlig en forudsætning for at deltage i quiz'en, at du IKKE prøver nedenstående af, men blot giver dit bedste bud på hvad du regner med der sker.&lt;/P&gt;
&lt;P&gt;Vi starter med&amp;nbsp;5&amp;nbsp;X Indsættelse af en TextBox, og spørgsmålet til alle&amp;nbsp;5 er:&lt;BR&gt;Når siden vises i browseren, hvilke data&amp;nbsp;er så blevet&amp;nbsp;renderet til det skjulte felt __VIEWSTATE, og hvorfor?&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;Og husk - ikke noget med at prøve det af inden du svarer ;o)&lt;BR&gt;&lt;/P&gt;
&lt;P&gt;1)&lt;BR&gt;Følgende markup:&lt;/P&gt;
&lt;DIV class=wlWriterSmartContent id=57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:b4013129-e9e4-46c7-941d-099f9d14dea8 contentEditable=false style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;&lt;PRE style="BACKGROUND-COLOR: white"&gt;&lt;DIV&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;asp:TextBox &lt;/SPAN&gt;&lt;SPAN style="COLOR: #ff0000"&gt;ID&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="t0"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #ff0000"&gt; runat&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="server"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #ff0000"&gt; Text&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="En masse tekst"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;asp:TextBox&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P&gt;2)&lt;/P&gt;
&lt;P&gt;Følgende markup:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class=wlWriterSmartContent id=57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:16c9ba82-cd4e-40f9-ae39-3138189240e3 contentEditable=false style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;&lt;PRE style="BACKGROUND-COLOR: white"&gt;&lt;DIV&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;lt;&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;asp:TextBox &lt;/SPAN&gt;&lt;SPAN style="COLOR: #ff0000"&gt;ID&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="t1"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #ff0000"&gt; runat&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;="server"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&amp;lt;/&lt;/SPAN&gt;&lt;SPAN style="COLOR: #800000"&gt;asp:TextBox&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;&amp;gt;&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Og følgende kode:&lt;BR&gt;&lt;/P&gt;
&lt;DIV class=wlWriterSmartContent id=57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:42728087-12a3-4acc-a048-fa2c21619d0f contentEditable=false style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;&lt;PRE style="BACKGROUND-COLOR: white"&gt;&lt;DIV&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;SPAN style="COLOR: #0000ff"&gt;protected&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;void&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; Page_Load(&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;object&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; sender, EventArgs e)
{
    t1.Text &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;En masse tekst&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;;
}
&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;3)&lt;/P&gt;
&lt;P&gt;Følgende kode:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class=wlWriterSmartContent id=57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:88a10f38-1802-4734-908d-2d7efde8477c contentEditable=false style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;&lt;PRE style="BACKGROUND-COLOR: white"&gt;&lt;DIV&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;SPAN style="COLOR: #0000ff"&gt;protected&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;void&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; Page_Load(&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;object&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; sender, EventArgs e)
{
    t2.Text &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;En masse tekst&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;;
}

&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;protected&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;override&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;void&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; OnInit(EventArgs e)
{
    &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;base&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;.OnInit(e);
    t2 &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;new&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; TextBox();
    t2.ID &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;t2&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;;
    form1.Controls.Add(t2);
}&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;4)&lt;BR&gt;Følgende kode:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class=wlWriterSmartContent id=57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:4b49bf94-4772-41cc-bb06-f6347c677a08 contentEditable=false style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;&lt;PRE style="BACKGROUND-COLOR: white"&gt;&lt;DIV&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;SPAN style="COLOR: #0000ff"&gt;protected&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;void&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; Page_Load(&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;object&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; sender, EventArgs e)
{
    TextBox t3 &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;new&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; TextBox();
    t3.ID &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;t3&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;;
    t3.Text &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;En masse tekst&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;;
    form1.Controls.Add(t3);
}
&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;5)&lt;BR&gt;Følgende kode:&lt;/P&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;DIV class=wlWriterSmartContent id=57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:de3ccb81-0425-4175-9b46-f43199076802 contentEditable=false style="PADDING-RIGHT: 0px; DISPLAY: inline; PADDING-LEFT: 0px; FLOAT: none; PADDING-BOTTOM: 0px; MARGIN: 0px; PADDING-TOP: 0px"&gt;&lt;PRE style="BACKGROUND-COLOR: white"&gt;&lt;DIV&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;SPAN style="COLOR: #0000ff"&gt;protected&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;void&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; Page_Load(&lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;object&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; sender, EventArgs e)
{
    TextBox t4 &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #0000ff"&gt;new&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; TextBox();
    t4.ID &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;t4&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;;
    form1.Controls.Add(t4);
    t4.Text &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;=&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt; &lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;En masse tekst&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;"&lt;/SPAN&gt;&lt;SPAN style="COLOR: #000000"&gt;;
}
&lt;/SPAN&gt;&lt;/DIV&gt;&lt;/PRE&gt;&lt;/DIV&gt;
&lt;P mce_keep="true"&gt;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Kom med et par bud på ovenstående, og så må vi se hvad denne quiz kan udvikle sig til (der er jo andet i ASP.NET end tekstbokse ;o).&lt;/P&gt;
&lt;P&gt;Og en sidste ting... Der er igen mulighed for sådan et sæt her:&lt;BR&gt;&lt;/P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/QuizErdernoglederkanregnedenherud_DDDD/DSC_0208%5B1%5D.jpg" atomicselection="true" mce_href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/QuizErdernoglederkanregnedenherud_DDDD/DSC_0208%5B1%5D.jpg"&gt;&lt;IMG style="BORDER-TOP-WIDTH: 0px; BORDER-LEFT-WIDTH: 0px; BORDER-BOTTOM-WIDTH: 0px; BORDER-RIGHT-WIDTH: 0px" height=240 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/QuizErdernoglederkanregnedenherud_DDDD/DSC_0208.jpg" width=239 border=0 mce_src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/QuizErdernoglederkanregnedenherud_DDDD/DSC_0208.jpg"&gt;&lt;/A&gt; 
&lt;P&gt;Mvh&lt;BR&gt;Jeppe&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3658342" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET/default.aspx" /><category term="Quiz" scheme="http://blogs.msdn.com/jepper/archive/tags/Quiz/default.aspx" /></entry><entry><title>Quiz for de kaffeinteresserede : Er der nogle der kan regne den her ud ?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/06/24/quiz-for-de-kaffeinteresserede-er-der-nogle-der-kan-regne-den-her-ud.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/06/24/quiz-for-de-kaffeinteresserede-er-der-nogle-der-kan-regne-den-her-ud.aspx</id><published>2007-06-24T13:42:56Z</published><updated>2007-06-24T13:42:56Z</updated><content type="html">- Og denne gang er der noget på højkant!&lt;br&gt;&lt;br&gt;Vi må ta' et lille kig på dynamisk indsatte UserControl's, så lad os få kridtet banen op :o)&lt;br&gt;&lt;br&gt; &lt;p&gt;I forbindelse med en lille løsning du sidder og hygger dig med, har du lavet en mindre UserControl:&lt;/p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:e9b7d204-058e-4fe7-afec-95c4e40e2872" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;%@ Control &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;Language&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;C#&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; AutoEventWireup&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;true&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; CodeFile&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;ExtraOptions.ascx.cs&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; Inherits&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;ExtraOptions&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; %&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
&lt;/span&gt;&lt;span style="color: #008000; "&gt;&amp;lt;!--&lt;/span&gt;&lt;span style="color: #008000; "&gt; Diverse kontroller her &lt;/span&gt;&lt;span style="color: #008000; "&gt;--&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Med nedenstående kode:&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:14acda6d-1a9e-43a0-a2c9-ee17d5c1d71e" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;public&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;partial&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;class&lt;/span&gt;&lt;span style="color: #000000; "&gt; ExtraOptions : System.Web.UI.UserControl
{
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;protected&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt; Page_Load(&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;object&lt;/span&gt;&lt;span style="color: #000000; "&gt; sender, EventArgs e)
    {
        &lt;/span&gt;&lt;span style="color: #008000; "&gt;//&lt;/span&gt;&lt;span style="color: #008000; "&gt; En masse kode der l&amp;#230;ser data, manipulerer kontroltr&amp;#230;er og &amp;#230;ndrer verden.&lt;/span&gt;&lt;span style="color: #008000; "&gt;
&lt;/span&gt;&lt;span style="color: #000000; "&gt;    }

    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;public&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt; SetDefaultChoice(&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;string&lt;/span&gt;&lt;span style="color: #000000; "&gt; choiceText)
    {
        &lt;/span&gt;&lt;span style="color: #008000; "&gt;//&lt;/span&gt;&lt;span style="color: #008000; "&gt; En eller anden implementering&lt;/span&gt;&lt;span style="color: #008000; "&gt;
&lt;/span&gt;&lt;span style="color: #000000; "&gt;    }
}
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;
&lt;p&gt;Og du skynder dig at&amp;nbsp;gå igang med at bruge den. &lt;br&gt;&lt;br&gt;Nu hedder&amp;nbsp;kontrollen jo ExtraOptions og skal være en tilføjelse på forskellige sider, i forskellige situationer, og du vælger en løsning, hvor den indsættes dynamisk, baseret på en parameter i QueryString, og laver på&amp;nbsp;én af dine sider noget i denne stil:&lt;/p&gt;
&lt;p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E6:d7c91aab-be54-40b0-8956-157786fa1a55" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;public&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;bool&lt;/span&gt;&lt;span style="color: #000000; "&gt; ShowExtraOptions
{
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;get&lt;/span&gt;&lt;span style="color: #000000; "&gt; 
    { 
        &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;bool&lt;/span&gt;&lt;span style="color: #000000; "&gt; extraOptions &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;false&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
        &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;bool&lt;/span&gt;&lt;span style="color: #000000; "&gt;.TryParse(Request.QueryString[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;ExtraOptions&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;], &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;out&lt;/span&gt;&lt;span style="color: #000000; "&gt; extraOptions);
        &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;return&lt;/span&gt;&lt;span style="color: #000000; "&gt; extraOptions; 
    }
}

&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;protected&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;void&lt;/span&gt;&lt;span style="color: #000000; "&gt; Page_Load(&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;object&lt;/span&gt;&lt;span style="color: #000000; "&gt; sender, EventArgs e)
{
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;if&lt;/span&gt;&lt;span style="color: #000000; "&gt; (ShowExtraOptions)
    {
        &lt;/span&gt;&lt;span style="color: #008000; "&gt;//&lt;/span&gt;&lt;span style="color: #008000; "&gt; du loader kontrollen&lt;/span&gt;&lt;span style="color: #008000; "&gt;
&lt;/span&gt;&lt;span style="color: #000000; "&gt;        Control extraOptions &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; LoadControl(&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;ExtraOptions.ascx&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;);
        &lt;/span&gt;&lt;span style="color: #008000; "&gt;//&lt;/span&gt;&lt;span style="color: #008000; "&gt; typecaster og kalder noget kontrolspecifikt&lt;/span&gt;&lt;span style="color: #008000; "&gt;
&lt;/span&gt;&lt;span style="color: #000000; "&gt;        ((ExtraOptions)extraOptions).SetDefaultChoice(&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;Choice2&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;);
        
        &lt;/span&gt;&lt;span style="color: #008000; "&gt;//&lt;/span&gt;&lt;span style="color: #008000; "&gt; og tilf&amp;#248;jen kontrollen til en placeholder&lt;/span&gt;&lt;span style="color: #008000; "&gt;
&lt;/span&gt;&lt;span style="color: #000000; "&gt;        UxDynamicControlContainer.Controls.Add(extraOptions);        
    }
}
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Du&amp;nbsp;fortsætter nu med andre ting, og er slet ikke opmærksom på at du netop har skrevet et stykke risikabelt kode, og samtidig påpeget en væsentlig uhendsigtmæssighed i ASP.NET!&lt;/p&gt;
&lt;p&gt;Nu er spørgsmålet jo så: &lt;br&gt;&lt;br&gt;&lt;u&gt;Hvad er det du har gjort der ikke er godt nok, og hvad er det for en uhendsigtsmæssighed jeg snakker om?&lt;br&gt;&lt;br&gt;&lt;/u&gt;Og&amp;nbsp;som skrevet er &lt;strong&gt;&lt;em&gt;der er denne gang en præmie at vinde&lt;/em&gt;&lt;/strong&gt;, nemlig&amp;nbsp;sådan en kop her:&lt;br&gt;&lt;br&gt;&lt;a href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/QuizErdernoglederkanregnedenherud_DDDD/DSC_0208%5B1%5D.jpg" atomicselection="true"&gt;&lt;img style="border-right: 0px; border-top: 0px; border-left: 0px; border-bottom: 0px" height="240" src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/QuizErdernoglederkanregnedenherud_DDDD/DSC_0208.jpg" width="239" border="0"&gt;&lt;/a&gt; &lt;/p&gt;
&lt;p&gt;&lt;em&gt;"Uhh buhh - en tiger - den har&amp;nbsp;vi da set før!!!"&lt;/em&gt;&lt;/p&gt;
&lt;p&gt;Jahh&amp;nbsp;- det har&amp;nbsp;i jo sikkert, men&amp;nbsp;den bliver naturligvis fyldt med nogle kaffebønner der er lidt ud over det sædvanlige, så nu&amp;nbsp;har du&amp;nbsp;muligheden for at smage &lt;a href="http://www.osterlandskthehus.dk/default.asp?produkt_id=1367&amp;amp;side=Online%20Butik&amp;amp;shop_action=shopv2_visprodukt&amp;amp;parent_id=14&amp;amp;hovedkategori_id=11" target="_blank"&gt;&lt;strong&gt;kaffen du aldrig ville købe selv&lt;/strong&gt;&lt;/a&gt;&lt;strong&gt; &lt;/strong&gt;;o)&lt;/p&gt;
&lt;p&gt;&lt;br&gt;Mvh&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3498651" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET/default.aspx" /><category term="Quiz" scheme="http://blogs.msdn.com/jepper/archive/tags/Quiz/default.aspx" /></entry><entry><title>Første møde i den århusianske .NET brugergruppe - en klar succes!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/06/22/f-rste-m-de-i-den-rhusianske-net-brugergruppe-en-klar-succes.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/06/22/f-rste-m-de-i-den-rhusianske-net-brugergruppe-en-klar-succes.aspx</id><published>2007-06-22T15:35:00Z</published><updated>2007-06-22T15:35:00Z</updated><content type="html">&lt;P&gt;Jeg var ligesom 14(!) andre til møde i den nu opstartede &lt;A class="" title="Århus .NET Usergroup" href="http://aarhus.activedeveloper.dk/" target=_blank mce_href="http://aarhus.activedeveloper.dk/"&gt;Århus .NET Usergroup&lt;/A&gt;&amp;nbsp;i onsdags, og det var en rigtig fed aften!&lt;BR&gt;&lt;BR&gt;&lt;A class="" href="http://www.publicvoid.dk/" target=_blank mce_href="http://www.publicvoid.dk/"&gt;Søren&lt;/A&gt; havde fundet den gule førertrøje frem fra skabet, og med den på sikrede han at vi kom igennem alle punkter på &lt;A class="" href="http://www.publicvoid.dk/AarhusNETUsergroupProposedAgenda.aspx" target=_blank mce_href="http://www.publicvoid.dk/AarhusNETUsergroupProposedAgenda.aspx"&gt;den foreslåede agenda&lt;/A&gt;&amp;nbsp;- og det endda i rigtig go' stil!&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0177%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0177%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0183%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0183%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Der blev landet nogle glimrende aftaler for gruppens fremtidige virke, og én af de vigtigere jeg kan nævne er, at gruppen vil afholde møde den sidste onsdag i hver måned - så bare sæt kryds i kalendere, og duk op næste gang :o)&lt;/P&gt;
&lt;P&gt;Efter mødet smuttede vi (nogle af os ad omveje) ned på &lt;A class="" href="http://www.svej.dk/" target=_blank mce_href="http://www.svej.dk/"&gt;Café Svej&lt;/A&gt;, og sluttede mødet af over et par fadøl - superhyggeligt!&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0188%5B7%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0188%5B6%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0189%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0189%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0187%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0187%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Da &lt;A class="" href="http://www.vadstrup.dk/" target=_blank mce_href="http://www.vadstrup.dk"&gt;Morten&lt;/A&gt; og jeg selv tilsyneladende havde fået nogle ringere fadøl end de andre, og deraf havde vanskeligere ved at få tømt glassene, endte vi med at være de sidste der sad tilbage, og Morten fik lejlighed til at demonstrere sine færdigheder ud i vejvisning og tværkulturel kommunikation, da 3 nordmænd (alle i et ualmindeligt godt humør) måtte ty til hans hjælp for at finde den rigtige bar... Og lad mig bare afsløre, at det nok ikke var deres plan at tage hverken deres mødre eller koner med derhen ;o).&lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0185%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0185%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0197%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0197%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0184%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0184%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Nå - men efter et par enkelte svinkeærinder (hvor vi f.eks. blev budt op til dans på ægte bonderøvsvis.. Altså "ska' vi slåz?" rutinen, fremsnøvlet af et par halvstive drønnerter) sluttede vi natten, ca. 4 timer før jeg skulle have toget igen, med lidt Silverlight og en kop kaffe... Alt i alt en&amp;nbsp;forrygende aften :o)&lt;/P&gt;
&lt;P&gt;Jeg tror der i Århus .NET brugergruppen er potentiale til en rigtig god og solid brugergruppe. Dels synes der er være stærke kræfter der vil arbejde på at få den på skinner, og dels virker det som om den sammensætning af udviklere der har ladet sig tiltrække af den, har meget at tilbyde hinanden. &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0198%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0198%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0199%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0199%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0190%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0190%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0192%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0192%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0194%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0194%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0195%5B5%5D.jpg" atomicselection="true"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=160 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Frstemdeiden.NETbrugergruppeenklarsucces_7D70/DSC_0195%5B4%5D.jpg" width=240 border=0&gt;&lt;/A&gt; &lt;/P&gt;&lt;/A&gt;&lt;/A&gt;
&lt;P&gt;&lt;BR&gt;Jeg er meget overbevist om at du trygt kan tilmelde dig i forvisning om at du kommer til at få rigtig meget godt ud af det. &lt;/P&gt;
&lt;P&gt;Mvh&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3460459" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET/default.aspx" /><category term="Arrangementer" scheme="http://blogs.msdn.com/jepper/archive/tags/Arrangementer/default.aspx" /><category term="Brugergrupper" scheme="http://blogs.msdn.com/jepper/archive/tags/Brugergrupper/default.aspx" /><category term=".NET" scheme="http://blogs.msdn.com/jepper/archive/tags/.NET/default.aspx" /></entry><entry><title>Opdatering af Ajax Control Toolkit</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/06/12/opdatering-af-ajax-control-toolkit.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/06/12/opdatering-af-ajax-control-toolkit.aspx</id><published>2007-06-13T00:17:00Z</published><updated>2007-06-13T00:17:00Z</updated><content type="html">&lt;P&gt;Nu har jeg nævnt projektet her nogle gange, og kommer nok til at gøre det igen ;o)&lt;BR&gt;&lt;BR&gt;Jeg synes det er et supergodt projekt, og en meget væsentlig pakke for ASP.NET udviklere, der ønsker at udnytte Ajax (og det er jo naturligvis jer allesammen ;o)&lt;/P&gt;
&lt;P&gt;Scott har&amp;nbsp;selvfølgelig beskrevet highlights&amp;nbsp;i opdateringen, og du kan læse om dem &lt;A class="" title=her href="http://weblogs.asp.net/scottgu/archive/2007/06/08/new-asp-net-ajax-control-toolkit-release.aspx" target=_blank mce_href="http://weblogs.asp.net/scottgu/archive/2007/06/08/new-asp-net-ajax-control-toolkit-release.aspx"&gt;her&lt;/A&gt;. Selve toolkit'et kan hentes på&amp;nbsp;&lt;A class="" title=CodePlex href="http://www.codeplex.com/AtlasControlToolkit/Release/ProjectReleases.aspx?ReleaseId=1813" target=_blank mce_href="http://www.codeplex.com/AtlasControlToolkit/Release/ProjectReleases.aspx?ReleaseId=1813"&gt;CodePlex&lt;/A&gt;.&lt;BR&gt;&lt;BR&gt;Hvis du ikke har prøvet toolkit'et endnu har du noget at glæde dig til - personligt synes jeg det har rigtig meget godt at byde på, og at det kontinuerligt bliver bedre er jo fedt :o)&lt;/P&gt;
&lt;P&gt;Og... Skulle du gå i stå et eller andet sted i processen omkring at tage det i brug, er du meget velkommen til at smide en kommentar her, eller skrive til mig direkte - så skal jeg se hvad jeg kan gøre :o)&lt;/P&gt;
&lt;P&gt;Mvh&lt;BR&gt;Jeppe&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3257227" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET AJAX" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET+AJAX/default.aspx" /></entry><entry><title>Ajax / Silverlight præsentationer og eksempler</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/06/06/ajax-silverlight-pr-sentation-p-n-nej-i-jupiter-o.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/06/06/ajax-silverlight-pr-sentation-p-n-nej-i-jupiter-o.aspx</id><published>2007-06-06T13:57:00Z</published><updated>2007-06-06T13:57:00Z</updated><content type="html">&lt;P&gt;Jeg har på det seneste talt en del om Ajax, og en smule om Silverlight.&amp;nbsp;I den forbindelse har jeg benyttet lidt forskellige eksempler som kan downloades &lt;A class="" title=her href="http://www.itjek.net/download/ajaxogsilverlighteksempler.zip" target=_blank mce_href="http://www.itjek.net/download/ajaxogsilverlighteksempler.zip"&gt;her&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;&lt;A class="" title=Zip-filen href="http://www.itjek.net/download/ajaxogsilverlighteksempler.zip" target=_blank mce_href="http://www.itjek.net/download/ajaxogsilverlighteksempler.zip"&gt;Zip-filen&lt;/A&gt; indeholder&amp;nbsp;2 forskellige solution's. Den ene viser en række Ajax-eksempler, og den anden viser - på et par forskellige måder - hvordan man kan få et Silverlight objekt instantieret i browseren, og scripte imod det (JavaScript). Desuden&amp;nbsp;er der&amp;nbsp;et eksempel på en Silverligth Extender, der giver mulighed for at extende et Panel til en Silverligth-container.&lt;/P&gt;
&lt;P&gt;Der ligger også en ppt-fil jeg nogle gange har vist lidt af, og i slutningen af den er der en række links - bl.a. til de værtøjer jeg har benyttet i forbindelse med præsentationerne (f.eks. Nikhil Kothari's Web Development Helper).&lt;/P&gt;
&lt;P&gt;Jeg håber i kan bruge eksemplerne til noget, og i er meget velkomne til at kommentere her - eller skrive til mig direkte - hvis i savner noget i eksemplerne.&lt;/P&gt;
&lt;P&gt;Mvh&lt;BR&gt;Jeppe&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=3115124" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET AJAX" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET+AJAX/default.aspx" /><category term="Silverlight" scheme="http://blogs.msdn.com/jepper/archive/tags/Silverlight/default.aspx" /><category term="Arrangementer" scheme="http://blogs.msdn.com/jepper/archive/tags/Arrangementer/default.aspx" /></entry><entry><title>ASP.NET Ajax i Cinemaxx, Århus - download eksempler</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/05/22/asp-net-ajax-i-cinemaxx-rhus-download-eksempler.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/05/22/asp-net-ajax-i-cinemaxx-rhus-download-eksempler.aspx</id><published>2007-05-22T04:22:00Z</published><updated>2007-05-22T04:22:00Z</updated><content type="html">&lt;P&gt;Så er &lt;A class="" title=dagen href="http://blogs.msdn.com/jepper/archive/2007/05/07/asp-net-ajax-p-det-store-l-rred-o.aspx" target=_blank mce_href="http://blogs.msdn.com/jepper/archive/2007/05/07/asp-net-ajax-p-det-store-l-rred-o.aspx"&gt;dagen&lt;/A&gt; hvor Niels Hartvig og undertegnede var i Århus for at fortælle lidt om Ajax jo både kommet og gået, og jeg håber at alle jer der deltog fik noget ud af det :o)&lt;/P&gt;
&lt;P&gt;Hvis du var med, eller bare godt kunne tænke dig at finde ud af hvad der foregik, kan du hente en zip'er&amp;nbsp;&lt;A class="" title="zip'er" href="http://www.itjek.net/download/ajax.zip" target=_blank mce_href="http://www.itjek.net/download/ajax.zip"&gt;her&lt;/A&gt;&amp;nbsp;med repræsentative eksempler fra dagen.&lt;BR&gt;&lt;BR&gt;Der var gang i&amp;nbsp;lidt forskellige solutions&amp;nbsp;undervejs, så hvis der er noget du mangler i det jeg har oploadet må du bare råbe op, så skal jeg nok eftersende det (min direkte @mail står i præsentationen, og på Default.aspx i den solution der ligger i zip-filen). Powerpoint præsentationen jeg brugte ligger der også.&amp;nbsp;&lt;/P&gt;
&lt;P&gt;Og Niels -&amp;nbsp;hvis&amp;nbsp;uploadhastighed må være enormt meget hurtigere end min&amp;nbsp;;o)&amp;nbsp;&amp;nbsp;- har også lagt sin&amp;nbsp;løsning til download, og den kan du finde&amp;nbsp;&lt;A class="" title=her href="http://hartvig.com/2007/5/15/[dk]_prasentation_fra_ajax_seminar_i_arhus.aspx" target=_blank mce_href="http://hartvig.com/2007/5/15/[dk]_prasentation_fra_ajax_seminar_i_arhus.aspx"&gt;her&lt;/A&gt;.&lt;/P&gt;
&lt;P mce_keep="true"&gt;Niels: Det var superfedt at du havde tid og lyst til at komme og snakke med, og&amp;nbsp;jeg håber vi kan finde ud af noget en anden gang :o)&lt;/P&gt;
&lt;P mce_keep="true"&gt;Mvh&lt;BR&gt;Jeppe&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2779541" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET AJAX" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET+AJAX/default.aspx" /><category term="Arrangementer" scheme="http://blogs.msdn.com/jepper/archive/tags/Arrangementer/default.aspx" /></entry><entry><title>ASP.NET AJAX på det store lærred :o)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/05/07/asp-net-ajax-p-det-store-l-rred-o.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/05/07/asp-net-ajax-p-det-store-l-rred-o.aspx</id><published>2007-05-07T12:02:00Z</published><updated>2007-05-07T12:02:00Z</updated><content type="html">&lt;P&gt;Hvis du synes du skylder at bruge lidt tid på at finde ud af hvad ASP.NET AJAX egentlig er, og hvad du kan bruge det til, så kommer der en god mulighed for det den 15/5-2007.&lt;/P&gt;
&lt;P&gt;Jeg tager til &lt;A class="" title="Cinemaxx i Århus" href="http://www.cinemaxx.dk/aarhus/index.asp" mce_href="http://www.cinemaxx.dk/aarhus/index.asp"&gt;Cinemaxx i Århus&lt;/A&gt;, og fortæller om lidt af hvert om AJAX /&amp;nbsp;ASP.NET AJAX, og Niels Hartvig fra &lt;A class="" title=Umbraco href="http://www.umbraco.dk/" target=_blank mce_href="http://www.umbraco.dk/"&gt;Umbraco&lt;/A&gt; runder dagen af med en præsentation af brugen af AJAX i et CMS som &lt;A class="" title=Umbraco href="http://www.umbraco.dk/" target=_blank mce_href="http://www.umbraco.dk/"&gt;Umbraco&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Du kan se Dorthe's annoncering af arrangementet &lt;A class="" title=her href="http://blogs.msdn.com/msdneventsdk/archive/2007/04/23/seminar-om-asp-net-ajax-en-hurtigere-vej-til-moderne-webapplikationer.aspx" target=_blank mce_href="http://blogs.msdn.com/msdneventsdk/archive/2007/04/23/seminar-om-asp-net-ajax-en-hurtigere-vej-til-moderne-webapplikationer.aspx"&gt;her&lt;/A&gt;, og tilmelding kan foregår &lt;A class="" title=her href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032337676&amp;amp;Culture=da-DK" target=_blank mce_href="http://msevents.microsoft.com/CUI/EventDetail.aspx?EventID=1032337676&amp;amp;Culture=da-DK"&gt;her&lt;/A&gt;.&lt;/P&gt;
&lt;P&gt;Kig forbi hvis du har tid, og hvis vi er stødt på hinanden tidligere (online eller offline), så kom ned på scenen og tag fat i mig... Jeg bliver i Århus til den 16, så vi kan sagtens smutte ud og finde en "kop kaffe" bagefter ;o)&lt;/P&gt;
&lt;P&gt;Håber vi ses :o)&lt;/P&gt;
&lt;P&gt;Mvh&lt;BR&gt;Jeppe&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2460429" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET AJAX" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET+AJAX/default.aspx" /><category term="Arrangementer" scheme="http://blogs.msdn.com/jepper/archive/tags/Arrangementer/default.aspx" /></entry><entry><title>At the end of the tunnel there is ... SILVERLIGHT!!!</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/04/20/at-the-end-of-the-tunnel-there-is-silverlight.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/04/20/at-the-end-of-the-tunnel-there-is-silverlight.aspx</id><published>2007-04-20T03:21:28Z</published><updated>2007-04-20T03:21:28Z</updated><content type="html">&lt;table&gt; &lt;tbody&gt; &lt;tr&gt; &lt;td valign="top"&gt;&lt;a href="http://www.microsoft.com/silverlight/" atomicselection="true"&gt;&lt;img height="166" src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/Attheendofthetunnelthereis.SILVERLIGHT_C91D/silverlight_thumb9.jpg" width="150" border="0"&gt;&lt;/a&gt;&lt;/td&gt; &lt;td valign="top"&gt;Kender du det der med at man sidder med alle de der fede idéer oppe i hovedet til hvordan ens nye - og alt for cool'e website - skal se ud...?&lt;br&gt;&lt;br&gt;Man har de vildeste planer om den topsejge brugergrænseflade man skal lave, og når man så fyrer op under Visual Studio, og kaster et blik i toolbox'en ser man... Akja... f.eks. en DropDownList og en CheckBox - som jo altså ikke er noget der helt giver den der Wauw-oplevelse...?&lt;br&gt;&lt;br&gt;Næh... Nogle gange kunne man ønske sig lidt mere lir i browseren, hvilket Silverlight er et glimrende værktøj til. &lt;/td&gt;&lt;/tr&gt;&lt;/tbody&gt;&lt;/table&gt; &lt;p&gt;&lt;br&gt;Silverlight - tidligere WPF/E - giver nogle&amp;nbsp;fede muligheder for at vise lækker grafik og video&amp;nbsp;i browsere. Helt grundlæggende er der tale om, at et subset af &lt;a href="http://www.microsoft.com/danmark/msdn/guide/wpf.mspx"&gt;WPF&lt;/a&gt; bringes ud til klienten i form af et plug-in, hvorefter man har mulighed for at vise&amp;nbsp;en brugerflade&amp;nbsp;bekrevet i XAML.&lt;br&gt;&lt;br&gt;Læs iøvrigt &lt;a href="http://bodrejer.spaces.live.com/Blog/cns!4AD071C23DE0340B!593.entry"&gt;Bo's indlæg som Silverlight&lt;/a&gt;.&lt;/p&gt; &lt;p&gt;Lad os tage et hurtigt eksempel (koden kan hentes &lt;a href="http://www.itjek.dk/samplesfordownload/silverlight.zip"&gt;her&lt;/a&gt;):&lt;br&gt;&lt;br&gt;Hvis vi tager udgangspunkt i følgende XAML-fil, (den slags kan laves i hånden, eller med et værktøj som &lt;a href="http://www.microsoft.com/Expression/products/overview.aspx?key=blend"&gt;Expression Blend&lt;/a&gt;):&lt;/p&gt; &lt;p&gt; &lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:52b06917-0185-44ee-a058-9e4f9c4c1524" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;Canvas
  &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;xmlns&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;http://schemas.microsoft.com/client/2007&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
  xmlns:x&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;http://schemas.microsoft.com/winfx/2006/xaml&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
  Loaded&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;javascript:onCanvasLoaded&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;Canvas&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;.Background&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;LinearGradientBrush&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;GradientStop &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;x:Name&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;start&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; Color&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;#ffffff&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; Offset&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;0.0&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;GradientStop &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;x:Name&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;end&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; Color&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;#000000&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; Offset&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;1.0&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;LinearGradientBrush&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;Canvas.Background&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;Canvas&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;.Triggers&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;EventTrigger &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;RoutedEvent&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Canvas.Loaded&amp;quot;&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;EventTrigger&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;.Actions&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
        &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;BeginStoryboard&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
          &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;Storyboard&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
            &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;DoubleAnimation
              &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;Storyboard.TargetName&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;r1&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              Storyboard.TargetProperty&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Angle&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              From&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;0&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              To&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;360&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              Duration&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;0:0:5&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              AutoReverse&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;True&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              RepeatBehavior&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Forever&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
            &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;DoubleAnimation
              &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;Storyboard.TargetName&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;r2&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              Storyboard.TargetProperty&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Angle&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              From&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;360&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              To&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;0&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              Duration&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;0:0:5&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              AutoReverse&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;True&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              RepeatBehavior&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Forever&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
            &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;ColorAnimation
              &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;Storyboard.TargetName&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;start&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              Storyboard.TargetProperty&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Color&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              From&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;#000000&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              To&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;#ffffff&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              Duration&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;0:0:3.5&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              AutoReverse&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;True&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; 
              RepeatBehavior&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Forever&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
            &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;ColorAnimation
              &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;Storyboard.TargetName&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;end&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              Storyboard.TargetProperty&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Color&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              From&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;#ffffff&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              To&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;#000000&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              Duration&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;0:0:5.5&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
              AutoReverse&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;True&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; 
              RepeatBehavior&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Forever&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
          &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;Storyboard&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
        &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;BeginStoryboard&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;EventTrigger.Actions&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;EventTrigger&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;Canvas.Triggers&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;TextBlock
    &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;x:Name&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;s1&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    Text&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Silverlight&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    FontFamily&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Arial&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    FontSize&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;60&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    FontWeight&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Bold&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    Foreground&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Silver&amp;quot;&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;TextBlock&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;.RenderTransform&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;RotateTransform
        &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;x:Name&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;r1&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;TextBlock.RenderTransform&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;TextBlock&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;TextBlock
    &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;x:Name&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;s2&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    Text&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Silverlight&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    FontFamily&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Arial&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    FontSize&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;60&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    FontWeight&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Bold&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;
    Foreground&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;Silver&amp;quot;&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;TextBlock&lt;/span&gt;&lt;span style="color: #FF0000; "&gt;.RenderTransform&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
      &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;RotateTransform
        &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;x:Name&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;r2&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;/&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;TextBlock.RenderTransform&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
  &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;TextBlock&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;Canvas&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;&lt;br&gt;Så kræver der egentlig ikke så meget andet, end at man sørger for at instantiere Silverlight i browseren. Det er vanen tro forskelligt fra browser til browser hvordan den slags foregår. I IE er det et spørgsmål om et object-tag, og i FireFox og Safari et embed-tag.&lt;br&gt;Det kræver som nævnt et lille plug-in (ca. 2MB), hvilket der så skal henvises til, hvis det ikke er installeret, men alle den slags forhold,&amp;nbsp;kan man heldigvis slippe for at bekymre sig om, da man kan benytte agHost.js som ligger i &lt;a href="http://www.microsoft.com/downloads/details.aspx?FamilyID=c744cbb8-d4d9-4bf9-ad5c-eef36e064911&amp;amp;displaylang=en"&gt;SDK'et&lt;/a&gt;. En lille JavaScript-fil, hvor bemeldte elementer er implementeret.&lt;br&gt;&lt;br&gt;Benyttes den, skal man blot instantiere et agHost objekt, hvilket kan gøres reletivt let:&lt;/p&gt;
&lt;p&gt;Først et panel der kan huse kontrollen:&lt;/p&gt;
&lt;p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:3a3a217e-cc77-4b51-aeb8-bf44e41d3939" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;asp:Panel &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;ID&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;agControlHost&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; runat&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;server&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;/&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Og et script til at sørge for at&amp;nbsp;man får vist sit Silverlight objekt (baseret på xaml-filen):&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:ae067321-e427-4c80-a0aa-8f81df438f12" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;script &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;type&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;
&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #0000FF; "&gt;new&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt; agHost(
    &lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;agControlHost&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;, &lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #008000; "&gt;//&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #008000; "&gt; &lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #008000; "&gt;
&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;    &lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;agControl&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;,
    &lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;100px&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;,
    &lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;100px&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;,
    &lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;#000000&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;,
    &lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #0000FF; "&gt;null&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;,
    &lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;SomeXaml.xaml&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="background-color: #F5F5F5; color: #000000; "&gt;
);
&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;script&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;span style="color: #000000; "&gt;
&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;
&lt;p&gt;Hvilket så blot kræver at man sikrer at agHost.js kommer med ud til browseren:
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:0ad7e083-bf2d-447c-9949-fa8b35c0c437" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;&amp;lt;&lt;/span&gt;&lt;span style="color: #800000; "&gt;script &lt;/span&gt;&lt;span style="color: #FF0000; "&gt;type&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;text/javascript&amp;quot;&lt;/span&gt;&lt;span style="color: #FF0000; "&gt; src&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;=&amp;quot;aghost.js&amp;quot;&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&amp;lt;/&lt;/span&gt;&lt;span style="color: #800000; "&gt;script&lt;/span&gt;&lt;span style="color: #0000FF; "&gt;&amp;gt;&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;/p&gt;
&lt;p&gt;Typisk vil det være interessant også at kunne skrive noget client-side kode mod sit Silverlight-objekt, hvilket selvfølgelig også er muligt.&lt;br&gt;I eksemplet kunne det f.eks. være hensigtmæssigt, at sikre sig at noget omkring størrelser, og de punkter der roteres om:&lt;/p&gt;
&lt;div class="wlWriterSmartContent" id="57F11A72-B0E5-49c7-9094-E3A15BD5B5E7:3b628592-91f9-4c1d-b9f9-c934f8d09337" contenteditable="false" style="padding-right: 0px; display: inline; padding-left: 0px; float: none; padding-bottom: 0px; margin: 0px; padding-top: 0px"&gt;&lt;pre style="background-color:White;"&gt;&lt;div&gt;&lt;!--

Code highlighting produced by Actipro CodeHighlighter (freeware)
http://www.CodeHighlighter.com/

--&gt;&lt;span style="color: #0000FF; "&gt;function&lt;/span&gt;&lt;span style="color: #000000; "&gt; onCanvasLoaded(sender, args) {
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;var&lt;/span&gt;&lt;span style="color: #000000; "&gt; control &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; sender.getHost();
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;var&lt;/span&gt;&lt;span style="color: #000000; "&gt; containerWidth &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; control.ActualWidth;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;var&lt;/span&gt;&lt;span style="color: #000000; "&gt; containerHeight &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; control.ActualHeight;
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;var&lt;/span&gt;&lt;span style="color: #000000; "&gt; canvas &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; sender;
    
    canvas.Width &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; containerWidth;
    canvas.Height &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; containerHeight;

    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;var&lt;/span&gt;&lt;span style="color: #000000; "&gt; s1 &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; control.findName(&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;s1&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;);
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;var&lt;/span&gt;&lt;span style="color: #000000; "&gt; s2 &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; control.findName(&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;s2&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;);
    
    s1[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;FontSize&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; s2[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;FontSize&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; containerWidth&lt;/span&gt;&lt;span style="color: #000000; "&gt;/&lt;/span&gt;&lt;span style="color: #000000; "&gt;5&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    s1[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;Text&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; s2[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;Text&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;Silverlight&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    s1[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;Canvas.Left&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; s2[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;Canvas.Left&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; (containerWidth&lt;/span&gt;&lt;span style="color: #000000; "&gt;/&lt;/span&gt;&lt;span style="color: #000000; "&gt;2&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;-&lt;/span&gt;&lt;span style="color: #000000; "&gt; s1.ActualWidth&lt;/span&gt;&lt;span style="color: #000000; "&gt;/&lt;/span&gt;&lt;span style="color: #000000; "&gt;2&lt;/span&gt;&lt;span style="color: #000000; "&gt;)&lt;/span&gt;&lt;span style="color: #000000; "&gt;+&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;px&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    s1[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;Canvas.Top&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; s2[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;Canvas.Top&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; (containerHeight&lt;/span&gt;&lt;span style="color: #000000; "&gt;/&lt;/span&gt;&lt;span style="color: #000000; "&gt;2&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;-&lt;/span&gt;&lt;span style="color: #000000; "&gt; s1.ActualHeight&lt;/span&gt;&lt;span style="color: #000000; "&gt;/&lt;/span&gt;&lt;span style="color: #000000; "&gt;2&lt;/span&gt;&lt;span style="color: #000000; "&gt;)&lt;/span&gt;&lt;span style="color: #000000; "&gt;+&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;px&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;    
        
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;var&lt;/span&gt;&lt;span style="color: #000000; "&gt; r1 &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; control.findName(&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;r1&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;);
    r1[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;CenterX&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; s1.ActualWidth&lt;/span&gt;&lt;span style="color: #000000; "&gt;/&lt;/span&gt;&lt;span style="color: #000000; "&gt;2&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;+&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;px&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    r1[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;CenterY&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; s1.ActualHeight&lt;/span&gt;&lt;span style="color: #000000; "&gt;/&lt;/span&gt;&lt;span style="color: #000000; "&gt;2&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;+&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;px&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    
    &lt;/span&gt;&lt;span style="color: #0000FF; "&gt;var&lt;/span&gt;&lt;span style="color: #000000; "&gt; r2 &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; control.findName(&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;r2&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;);
    r2[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;CenterX&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; s2.ActualWidth&lt;/span&gt;&lt;span style="color: #000000; "&gt;/&lt;/span&gt;&lt;span style="color: #000000; "&gt;2&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;+&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;px&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
    r2[&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;CenterY&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;] &lt;/span&gt;&lt;span style="color: #000000; "&gt;=&lt;/span&gt;&lt;span style="color: #000000; "&gt; s2.ActualHeight&lt;/span&gt;&lt;span style="color: #000000; "&gt;/&lt;/span&gt;&lt;span style="color: #000000; "&gt;2&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;+&lt;/span&gt;&lt;span style="color: #000000; "&gt; &lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;px&lt;/span&gt;&lt;span style="color: #000000; "&gt;&amp;quot;&lt;/span&gt;&lt;span style="color: #000000; "&gt;;
}&lt;/span&gt;&lt;/div&gt;&lt;/pre&gt;&lt;/div&gt;&lt;br&gt;&lt;br&gt;Bemærk forøvrigt navnet &lt;strong&gt;ag&lt;/strong&gt;Host, og i selve filen type="application/&lt;strong&gt;ag&lt;/strong&gt;-plugin"... Silverlight (eller noget i samme stil) &lt;a href="http://wpf.netfx3.com/blogs/presentation_bloggers/archive/2007/04/16/silverlight-trivia.aspx"&gt;har været på&amp;nbsp;tegnebrædtet i en rum tid&lt;/a&gt; ;o)
&lt;p&gt;Nu er jeg jo ikke udpræget fortaler for at sylte&amp;nbsp;ens sider ind i diverse JavaScript, og det er klart at det ville være at foretrække, hvis man blot kunne trække en Silverlight kontrol ind fra toolbox'en og angive hvilken xaml-fil der skulle bruges - og det er et supereksempel på en glimrende ajax-extender, baseret på modellen fra &lt;a href="http://ajax.asp.net/ajaxtoolkit/Walkthrough/CreatingNewExtender.aspx"&gt;Ajax Control Toolkit&lt;/a&gt;.&lt;br&gt;&lt;br&gt;Så kan man strikke en extender sammen, der giver muligheden for at "extende" et eksisterende Panel til en Silverlight container, og lade extenderen sørge for, at agHost.js bliver smidt med ud til klienten.&lt;/p&gt;
&lt;p&gt;En&amp;nbsp;rigtig elegant løsning som heldigvis allerede er lavet, og du kan hente et eksempel fra Davids Ansons &lt;a href="http://blogs.msdn.com/delay/archive/2007/02/08/toolkit-talk-take-two-spoke-at-the-techready4-conference.aspx"&gt;blogindlæg&lt;/a&gt;. Et meget pædagogisk eksempel der viser hvordan det ser ud hhv. med og uden extender - og extenderen ligger der selvfølgelig også.&lt;br&gt;&lt;br&gt;Mit eget lille eksempel (baseret på samme løsning) kan du hente &lt;a href="http://www.itjek.dk/samplesfordownload/silverlight.zip"&gt;her&lt;/a&gt;.&lt;br&gt;&lt;/p&gt;
&lt;p&gt;Men men men.... inden du går igang, er det en god idé at få fat i Silverlight fra &lt;a href="http://www.microsoft.com/silverlight/default.aspx"&gt;produktsiden&lt;/a&gt;, hvor der også er en hel del andre ressourcer end lige msi'en.&lt;/p&gt;
&lt;p&gt;&lt;br&gt;Mulighederne&amp;nbsp;med Silverlight er temmelig omfattende&amp;nbsp;-&amp;nbsp;tag&amp;nbsp;f.eks. og kig lidt i Da Vinci's værker &lt;a href="http://ttpdownload.bl.uk/browserapp.xbap"&gt;her&lt;/a&gt;...&lt;br&gt;&lt;br&gt;Mvh&lt;br&gt;Jeppe&lt;/p&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2199355" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET/default.aspx" /><category term="ASP.NET AJAX" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET+AJAX/default.aspx" /><category term="Silverlight" scheme="http://blogs.msdn.com/jepper/archive/tags/Silverlight/default.aspx" /></entry><entry><title>Visual Studio "Orcas" og .NET 3.5 - nu i beta1 :o)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/04/19/visual-studio-quot-orcas-quot-og-net-3-5-nu-i-beta1-o.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/04/19/visual-studio-quot-orcas-quot-og-net-3-5-nu-i-beta1-o.aspx</id><published>2007-04-19T22:23:00Z</published><updated>2007-04-19T22:23:00Z</updated><content type="html">&lt;P&gt;&lt;A href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/VisualStudioOrcasog.NET3.5nuibeta1o_12CDC/vs%5B3%5D.jpg" atomicselection="true" mce_href="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/VisualStudioOrcasog.NET3.5nuibeta1o_12CDC/vs%5B3%5D.jpg"&gt;&lt;IMG style="BORDER-RIGHT: 0px; BORDER-TOP: 0px; BORDER-LEFT: 0px; BORDER-BOTTOM: 0px" height=69 src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/VisualStudioOrcasog.NET3.5nuibeta1o_12CDC/vs_thumb%5B1%5D.jpg" width=437 border=0 mce_src="http://blogs.msdn.com/blogfiles/jepper/WindowsLiveWriter/VisualStudioOrcasog.NET3.5nuibeta1o_12CDC/vs_thumb%5B1%5D.jpg"&gt;&lt;/A&gt; &lt;/P&gt;
&lt;P&gt;Nu begynder det jo at blive en smule spændende. Visual Studio "Orcas" er hoppet et stort skridt&amp;nbsp;videre mod&amp;nbsp;en endelig frigivelse - alt for lækkert :oP&lt;BR&gt;&lt;BR&gt;Se lidt detaljer omkring det &lt;A href="http://msdn2.microsoft.com/en-us/vstudio/aa700831.aspx" mce_href="http://msdn2.microsoft.com/en-us/vstudio/aa700831.aspx"&gt;her&lt;/A&gt;.&lt;BR&gt;&lt;BR&gt;Desuden er der en anden rigtig interessant nyhed - der ligger nu&amp;nbsp;"Orcas" &lt;A href="http://msdn.microsoft.com/vstudio/express/future/default.aspx" mce_href="http://msdn.microsoft.com/vstudio/express/future/default.aspx"&gt;Express-versioner til download!!!&lt;/A&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2195933" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="Visual Studio" scheme="http://blogs.msdn.com/jepper/archive/tags/Visual+Studio/default.aspx" /><category term="Orcas" scheme="http://blogs.msdn.com/jepper/archive/tags/Orcas/default.aspx" /></entry><entry><title>Endnu en ASP.NET (+ det løse) Quiz :o)</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/04/12/endnu-en-asp-net-det-l-se-quiz-o.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/04/12/endnu-en-asp-net-det-l-se-quiz-o.aspx</id><published>2007-04-12T11:53:00Z</published><updated>2007-04-12T11:53:00Z</updated><content type="html">&lt;P&gt;Her kommer så en art folde-ud-quiz ;o)&lt;BR&gt;&lt;BR&gt;Vi starter med et meget konkret spørgsmål - nemlig:&lt;BR&gt;Hvad er det her for et format?&lt;BR&gt;&lt;BR&gt;[{"Age":81,"Name":"Bent"},{"Age":22,"Name":"Ib"},{"Age":45,"Name":"Grete"},{"Age":45,"Name":"Grete"},{"Age":91,"Name":"Hanne"},{"Age":81,"Name":"Bent"},{"Age":22,"Name":"Ib"},{"Age":91,"Name":"Hanne"}]&lt;BR&gt;&lt;BR&gt;Og et lidt mindre konkrert:&lt;BR&gt;Hvorfor i alverden skulle det have relevans for en ASP.NET udvikler?&lt;/P&gt;
&lt;P&gt;Mvh&lt;BR&gt;Jeppe&lt;BR&gt;&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2097441" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET/default.aspx" /><category term="Quiz" scheme="http://blogs.msdn.com/jepper/archive/tags/Quiz/default.aspx" /></entry><entry><title>Quiz - En lidt eksotisk feature?</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/04/03/quiz-en-lidt-eksotisk-feature.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/04/03/quiz-en-lidt-eksotisk-feature.aspx</id><published>2007-04-03T02:34:00Z</published><updated>2007-04-03T02:34:00Z</updated><content type="html">&lt;P&gt;Vi må lige have en lille&amp;nbsp;ASP.NET quiz til :o)&lt;/P&gt;
&lt;P&gt;Du&amp;nbsp;har sikkert bemærket at man i sin markup kan have noget som dette her:&lt;BR&gt;&lt;FONT color=#ff0000 size=2&gt;ConnectionString&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;="&lt;/FONT&gt;&lt;FONT size=2&gt;&amp;lt;%$ ConnectionStrings:SomeConnectionString %&amp;gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;"&lt;/P&gt;&lt;/FONT&gt;
&lt;P&gt;Som sørger for at få fat i en connectionstring angivet i web.config&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;BR&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;connectionStrings&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;BR&gt;&amp;nbsp; &amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;add&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;name&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;FomulaOneConnectionString1&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;connectionString&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;...&lt;/FONT&gt;&lt;FONT size=2&gt;&lt;FONT color=#000000&gt;" &lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;providerName&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;=&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;System.Data.SqlClient&lt;/FONT&gt;&lt;FONT color=#000000 size=2&gt;"&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt; /&amp;gt;&lt;BR&gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;connectionStrings&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#000000&gt;Det er dejlig feature, der udvider mulighederne i mark-up'en, og giver en&amp;nbsp;intuitiv (og ikke mindst kort) syntaks for adgang til en&amp;nbsp;ofte anvendt ressource, og det er jo glimrende - måske endda forrygende - men; &lt;BR&gt;&lt;BR&gt;1) Hvad er det lige for en feature vi har fat i her?&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/P&gt;
&lt;P&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#0000ff size=2&gt;&lt;FONT color=#000000&gt;Og lad os nu antage, at jeg i min applikation har lavet mig et lille API der giver mig mulighed for at hente en vits:&lt;BR&gt;&lt;FONT color=#0000ff size=2&gt;&lt;/P&gt;
&lt;P&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;class&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;Jokes&lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;{&lt;BR&gt;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;public&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;static&lt;/FONT&gt;&lt;FONT size=2&gt;&amp;nbsp;&lt;/FONT&gt;&lt;FONT color=#2b91af size=2&gt;String&lt;/FONT&gt;&lt;FONT size=2&gt; GetJoke(&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;int&lt;/FONT&gt;&lt;FONT size=2&gt; jokeId)&lt;BR&gt;&amp;nbsp; {&lt;BR&gt;&amp;nbsp;&amp;nbsp;&amp;nbsp; &lt;/FONT&gt;&lt;FONT color=#008000 size=2&gt;// implementering&lt;BR&gt;&amp;nbsp; &lt;/FONT&gt;&lt;FONT size=2&gt;}&lt;BR&gt;&lt;/FONT&gt;&lt;FONT size=2&gt;}&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;Og at jeg godt kunne tænke mig at være i stand til at skrive sådan noget som det her i min mark-up:&lt;BR&gt;&lt;FONT color=#0000ff size=2&gt;&amp;lt;&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;asp&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;:&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Label&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;ID&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;="lblJoke"&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;runat&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;="server"&lt;/FONT&gt;&lt;FONT size=2&gt; &lt;/FONT&gt;&lt;FONT color=#ff0000 size=2&gt;Text&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;="&lt;/FONT&gt;&lt;FONT size=2&gt;&amp;lt;%$ Jokes:3 %&amp;gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;"&amp;gt;&amp;lt;/&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;asp&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;:&lt;/FONT&gt;&lt;FONT color=#a31515 size=2&gt;Label&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&amp;gt;&lt;/P&gt;
&lt;P&gt;&lt;/FONT&gt;2) Ville det så overhovedet være muligt, og hvad ville det i givet fald kræve af mig?&lt;BR&gt;&lt;BR&gt;Håber&amp;nbsp;du har et bud - og hvis ikke kan du jo altid skrive at du gerne vil høre nærmere :o)&lt;/P&gt;
&lt;P&gt;Mvh&lt;BR&gt;Jeppe&lt;BR&gt;&lt;/P&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;/FONT&gt;&lt;FONT color=#0000ff size=2&gt;&lt;/FONT&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=2014986" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="ASP.NET" scheme="http://blogs.msdn.com/jepper/archive/tags/ASP.NET/default.aspx" /><category term="Quiz" scheme="http://blogs.msdn.com/jepper/archive/tags/Quiz/default.aspx" /></entry><entry><title>Windows Live "In a box"</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/03/08/windows-live-in-a-box.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/03/08/windows-live-in-a-box.aspx</id><published>2007-03-08T23:39:00Z</published><updated>2007-03-08T23:39:00Z</updated><content type="html">&lt;P&gt;Hvis du har gået og grublet over hvad alt det der "Live" egentlig går ud på, og om det er noget du kan bruge til noget, så er der kommet en rigtig god mulighed for at sætte sig lidt ind i det.&lt;/P&gt;
&lt;P&gt;&lt;A class="" title="Windows Live Dev" href="http://dev.live.com/" target=_blank mce_href="http://dev.live.com/"&gt;Windows Live Dev&lt;/A&gt; er det ultimative startsted, og de har netop annonceret &lt;A class="" title='Windows Live "In a Box"' href="http://www.codeplex.com/liveinabox" target=_blank mce_href="http://www.codeplex.com/liveinabox"&gt;Windows Live "In a Box"&lt;/A&gt;&amp;nbsp;som ser ud til at være et rigtig godt skub i den rigtige retning, hvis&amp;nbsp;du gerne vil ordentligt ind i sagerne.&lt;/P&gt;
&lt;P&gt;Det er en række eksempler, som giver et indblik i de muligheder man har med &lt;A class="" title="Windows Live platformen" href="http://dev.live.com/blogs/devlive/archive/2006/05/19/15.aspx" target=_blank mce_href="http://dev.live.com/blogs/devlive/archive/2006/05/19/15.aspx"&gt;Windows Live platformen&lt;/A&gt;. Windows Live "In a Box" er et projekt på &lt;A class="" title=CodePlex href="http://www.codeplex.com/" target=_blank mce_href="http://www.codeplex.com/"&gt;CodePlex&lt;/A&gt;, så&amp;nbsp;der er ikke nogle "hemmelige bits" der, og du har selv mulighed for at give et bidrag ;o)&lt;/P&gt;
&lt;P&gt;I "Box'en" kan du finde eksempler på følgende:&lt;/P&gt;
&lt;LI&gt;search APIs 
&lt;LI&gt;map APIs 
&lt;LI&gt;contact APIs 
&lt;LI&gt;WPF/E 
&lt;LI&gt;Messenger activity APIs 
&lt;LI&gt;web gadgets&amp;nbsp;&lt;/LI&gt;
&lt;P&gt;God fornøjelse :o)&lt;BR&gt;&lt;BR&gt;Mvh&lt;BR&gt;Jeppe&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1839332" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author><category term="Windows Live" scheme="http://blogs.msdn.com/jepper/archive/tags/Windows+Live/default.aspx" /></entry><entry><title>Når udviklere ville vælge Vista....</title><link rel="alternate" type="text/html" href="http://blogs.msdn.com/jepper/archive/2007/03/07/n-r-udviklere-ville-v-lge-vista.aspx" /><id>http://blogs.msdn.com/jepper/archive/2007/03/07/n-r-udviklere-ville-v-lge-vista.aspx</id><published>2007-03-07T12:17:00Z</published><updated>2007-03-07T12:17:00Z</updated><content type="html">&lt;P&gt;Akja - Visual Studio 2005 på en Vista har desværre ikke været en helt problemfri oplevelse, men&amp;nbsp;tag et kig &lt;A class="" title=her href="http://www.microsoft.com/downloads/thankyou.aspx?familyId=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&amp;amp;displayLang=en" target=_blank mce_href="http://www.microsoft.com/downloads/thankyou.aspx?familyId=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&amp;amp;displayLang=en"&gt;her&lt;/A&gt; - og se om ikke&amp;nbsp;det hjælper på det ;o)&lt;/P&gt;
&lt;P&gt;&lt;A class="" title="Go get it!" href="http://www.microsoft.com/downloads/thankyou.aspx?familyId=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&amp;amp;displayLang=en" mce_href="http://www.microsoft.com/downloads/thankyou.aspx?familyId=90e2942d-3ad1-4873-a2ee-4acc0aace5b6&amp;amp;displayLang=en"&gt;Go get it!&lt;/A&gt;&lt;/P&gt;
&lt;P&gt;Mvh&lt;BR&gt;Jeppe&lt;/P&gt;&lt;img src="http://blogs.msdn.com/aggbug.aspx?PostID=1826326" width="1" height="1"&gt;</content><author><name>jepper</name><uri>http://blogs.msdn.com/members/jepper.aspx</uri></author></entry></feed>