2010-11-18 8 views
0

Ich versuche herauszufinden, wie das Abspielen eines Silverlight MediaElement, das in einem Silverlight User Control in einem ASP.NET eingebettet ist, während des Postbacks bestehen bleibt.Persist Silverlight MediaElement spielt auf ASP.NET Postback

Das Szenario geht:

Haben Sie einen Media-Player auf einer Website, drücken Sie spielen, weiter durch Website navigieren, während die Musik spielt weiter.

Was es jetzt tut: Offensichtlich wird das Objekt neu auf jedem Postback oder Seitenumleitung geladen (auch wenn es wieder auf die gleiche Seite IE: default.aspx).

Ich habe Beispiele gesehen, wie man den Status eines Controls beim Postback und sogar komplexe Daten durch Cross-Page-Postback beibehalten kann. Aber nichts, was meinen speziellen Fall abdeckt.

Weitere Angaben: Silverlight 2 ASP.NET C#

Mein default.aspx:

<html> 
</head> 
    </head> 
<body> 
    <form id="form1" runat="server" style="height:100%"> 
    <div id="silverlightControlHost"> 
     <object data="data:application/x-silverlight-2," type="application/x-silverlight-2" width="100%" height="100%"> 
      <param name="source" value="ClientBin/RickBainAudioPlayer.xap"/> 
      <param name="onError" value="onSilverlightError" /> 
      <param name="background" value="white" /> 
      <param name="minRuntimeVersion" value="3.0.40624.0" /> 
      <param name="autoUpgrade" value="true" /> 
      <a href="http://go.microsoft.com/fwlink/?LinkID=149156&v=3.0.40624.0" style="text-decoration:none"> 
       <img src="http://go.microsoft.com/fwlink/?LinkId=108181" alt="Get Microsoft Silverlight" style="border-style:none"/> 
      </a> 
     </object><iframe id="_sl_historyFrame" style="visibility:hidden;height:0px;width:0px;border:0px"></iframe></div> 
    </form> 
</body> 
</html> 
+0

Was möchten Sie wirklich tun? Stellen Sie sich vor, wie die Wiedergabe reibungslos fortgesetzt werden kann, während der Benutzer auf Ihrer Website navigiert? – AnthonyWJones

+0

@AnthonyWJones Genau richtig. – KenEucker

Antwort

0

Der einzige Weg, ich weiß, dies zu tun, ist eher ein alter Hut. Verwenden Sie HTML-Frames. Platzieren Sie die Silverlight-Anwendung, die das Medium in einem Framw spielt, und platzieren Sie den Rest Ihrer Website im Hauptrahmen.

+0

Danke, ich werde es versuchen. – KenEucker

+0

Das war die beste Lösung, die ich vorläufig finden konnte. Vielen Dank! – KenEucker