Silverlight-app verschwindet auf Seite aktualisieren im IE10
UPDATE: Es gibt einen workaround für das problem. Es ist die Kraft IE10 in den Kompatibilitätsmodus, indem Sie einen der folgenden meta-tags:
<meta http-equiv="x-ua-compatible" content="IE=7" />
<meta http-equiv="x-ua-compatible" content="IE=8" />
Dies ist nicht wirklich eine perfekte Lösung, aus verschiedenen Gründen, aber es beseitigt das problem zumindest.
URSPRÜNGLICHEN FRAGE:
Ich erkannte ein paar Monaten, dass es ein problem mit unserem Silverlight-Anwendung in IE10 auf Windows 8 (ich habe nicht versucht, die IE10 preview für Windows 7). Wenn die asp.net Seite hosting unserer SL-app zum ersten mal geladen, alles funktioniert einwandfrei und lädt die Anwendung wie erwartet. Wenn ich aktualisieren Sie die Seite sofort, es lädt auch wie erwartet. Aber: Wenn ich mich konzentrieren sich die Silverlight-Anwendung, indem Sie es ein und DANN drücken Sie die Taste F5, es geht einfach leer. Es ist wie das plugin verschwindet vollständig. Wenn ich trace der Anforderungen mit Fiddler kann ich sehen, dass kein Antrag ausgestellt wird, für die xap-Datei. Ich habe die Hoffnung, dass dies behoben werden in einem patch-release für den IE10, aber bisher hat sich nichts geändert. Ich kann nicht finden alle Informationen über dieses, wenn ich versuche zu googeln es. Es scheint mir sehr unwahrscheinlich, dass ich die erste person sein, der es entdeckt und ich bin ganz überrascht, dass ich bin nicht der Suche nach mehr Informationen. Um das Problem zu reproduzieren:
- Erstellen Sie ein neues Silverlight-Anwendung
- Fügen Sie irgendeine Art von Inhalt auf der Hauptseite.xaml, wie eine Schaltfläche oder was auch immer
- Führen Sie die app im IE10 (auf Win8)
- Klicken Sie irgendwo innerhalb der Silverlight-Anwendung. Dies ist nur zu konzentrieren, das plugin.
- Die Seite aktualisieren (F5)
- Ergebnis: Die Silverlight-Anwendung nicht geladen und die Seite ist leer.
Ein paar Beobachtungen:
- Nachdem die oben genannten Schritte, kein Betrag der erfrischend, bringt die Anwendung wieder.
- Nachdem die oben genannten Schritte, wenn ich re-geben Sie die url in die Adressleiste ein und drücken Sie die EINGABETASTE, lädt die Anwendung wie erwartet.
- Wenn ich aktivieren der Kompatibilitätsansicht im IE, die app lädt auch wie erwartet. Nichts, was ich tun werde den Fehler reproduzieren, wenn die Kompatibilitätsansicht aktiviert ist.
Nun zu meinen Fragen:
- Hat sonst noch wer beobachtet dieses Verhalten?
- Wenn ja, haben Sie fand einen workaround?
- Chris' Lösung funktioniert wie ein Charme, und ich würde Bedenken, dass eine gute work-around.
Du musst angemeldet sein, um einen Kommentar abzugeben.
Sehe ich das gleiche Problem mit meiner Silverlight-Anwendung im IE 10.
Ich habe versucht, indem der IE 8 Kompatibilität, meta-tag oben, aber das löst nicht das problem konsequent. Es scheint zu funktionieren nur zeitweise, nach sagen wir jede 5. refresh versucht?!
Nur so kann ich sehen, zu arbeiten, um dieses konsequent ist, zwingen Sie den Browser-Modus in "Internet Explorer 10-Kompatibilitätsansicht", und ich glaube nicht, dass dies getan werden kann, über den Inhalten der Seite (meta-tag, etc.)? Ich habe zum entfernen des IE 8 Kompatibilität, meta-tag, so dass die "Compatibility View" - button in der Adressleiste, und dann Fragen Benutzer, klicken Sie auf die Kompatibilität Schaltfläche, die dann in Erinnerung für die Website. Dies führt in den browser eingeben Browser-Modus: "IE 10 Compat View" und Dokument-Modus: "IE7-Standards". Die refresh-Verhalten dann konsequent arbeitet wie erwartet und wie früher.
Dies ist ein großes problem für uns. Wir haben gebaut unsere Silverlight-Anwendung, so dass die Aktualisierung des Browsers ist die Schaltfläche zum aktualisieren der Seiten/Inhalte innerhalb der app (der Benutzer bleibt angemeldet, etc.). Es ist wirklich schlimm, dass man sich Fragen muss, den Benutzern unserer Website im Kompatibilitätsmodus ausführen für die refresh-Funktionalität, die wie erwartet funktionieren.
Beachten Sie, dass diese immer noch wie erwartet funktioniert in Chrome. Es scheint dumm, dass möglicherweise müssen wir empfehlen, dass unsere Nutzer verwenden Chrome, weil dieses Thema!
UPDATE:
Einen workaround für dieses zu sein scheint, immer laden Sie die Silverlight-Objekt in seiner hosting-Seite, die dynamisch mit JavaScript.
E. g.
UPDATE 2:
Hier ist der aktuelle code, den ich verwenden, um dieses Problem zu umgehen:
Hatte ich noch Probleme mit der Lösung, präsentiert von Chris.
Dieser funktioniert perfekt für mich, aber:
onLoad
Weg und nicht geben mir keine Probleme im FF auch.Ich löste das problem in einer sehr einfachen Art und Weise. Ich Schrieb einen javascript-code am Ende der Seite (oder nach dem object-tag in wo ist die silverlight-app) und setzen Sie den Fokus auf ein anderes element, z.B. ein link. Beispiel:
<object id="silverlightHostControl">...bla bla bla</object>
<script type="text/javascript" language="javascript">
var shc = document.getElementById("silverlightHostControl");
document.getElementById("myLink").focus();
</script>
Den shc var nutzlos ist, habe ich gerade für die Klärung. Denken Sie daran: Ihr javascript-code muss setzen Sie den Fokus auf ein anderes (aber Isoliertes) Objekt NACH der silverlight-Anwendung object-Tags analysiert wird, was bedeutet, dass Ihre js-code ist geschrieben nach der silverlight-app-Objekts.
Antwort auf deine Frage #1, dies geschieht mit unserem Silverlight-apps auch. Den nur workarounds sind: 1) den browser neu starten oder 2) wechseln Sie zu compatibiity-Modus.
Es ist offenbar ein bug im ie10.
Danke für die ganzen workarounds Lösung, aber das ist offensichtlich ein bug mit Silverlight-plugin.
Wir angesprochen haben, einige tickets direkt mit Internet-explorer-Entwicklungsteam, und Sie sagte, das Problem wird von einem externen problem. Es ist nicht eine gute Antwort von Microsoft.
Sowieso, dieses mal unsere Entwickler angehoben ticket durch Silverlight-Entwicklung Mannschaft, die noch warten auf Ihre Reaktion. Um eine gute Antwort von Ihnen, wir müssen mehr Menschen stehen vor diesem Problem.
Abstimmen können Sie in dieser Ausgabe von Connect-website, die Microsoft ' s offizielle bug-reporting-Plattform.
Den link zu unserem ticket: http://connect.microsoft.com/VisualStudio/feedback/details/789004/ie10-shows-blank-page-upon-refreshing-silverlight-app
Cheers
Moh
Yeah ich bin auch vor demselben Problem mit einem meiner Anwendung. Wenn ich öffnet die Hilfe meiner Anwendung im IE 10 dann muss ich die Seite aktualisieren, jedes mal, um den Inhalt anzuzeigen.
Habe ich zwei Problemumgehung für dieses Problem:
1. Drücken Sie die Taste ALT einmal
2. Öffnen Sie den Internet Explorer im Kompatibilitätsmodus