Leider hat Microsoft das ASP.NET Server Control aus Silverlight 3 entfernt. Statt dessen muss jetzt per HTML Object Element das Silverlight Plugin in die Seite eingebaut werden. Laut Gerüchten wurde dies gemacht um klar zu stellen das man Silverlight in jede Art von Web Seite einbauen kann. Das hat aber auch Nachteile so ist der Scalemode nun verschwunden.
Die Gute Nachricht ist, das Control aus Silverlight 2 lässt sich mit ein wenig Aufwand weiter verwenden. Einzig die System.Web.Silverlight.DLL muss man sich besorgen.
- System.Web.Silverlight.dll in BIN Verzeichnis der Web Anwendung kopieren
- das ScriptManager Control aus den Extensions auf die Website ziehen
- Das Silverlight control aus der Toolbox ziehen (oder tippen)
- Setzen von Source Attribut und MinimumVersion Attribut auf 3.0.40000.0
- Wenn die Silverlight Navigation Controls zum Einsatz kommen einen iframe mit der ID “_sl_historyFrame” anlegen
<form id="form1" runat="server" style="height:100%;">
<asp:ScriptManager ID="ScriptManager1" runat="server"></asp:ScriptManager>
<div style="height:100%;">
<asp:Silverlight ID="Xaml1" runat="server"
Source="~/ClientBin/SilverlightApplication1.xap"
MinimumVersion="2.0.31005.0"
Width="100%" Height="100%" />
</div>
</form>