2012-03-22 12 views
5

La aplicación My Silverlight 5 alojada en un panel ASP.NET no se muestra en Firefox (versión 11). Sin embargo, funciona perfectamente en Chrome, IE y Safari. Estoy cargando dinámicamente el objeto Silverlight como se muestra a continuación. Esto se hace para pasar los parámetros init. (que eliminé para probar) Obtendré una pequeña área en blanco de Silverlight en lugar de la aplicación de Silverlight en Firefox.Firefox no muestra el control Silverlight 5 agregado dinámicamente

HtmlGenericControl myHtmlObject = new HtmlGenericControl("object"); 
myHtmlObject.Attributes["data"] = "data:application/x-silverlight"; 
myHtmlObject.Attributes["type"] = "application/x-silverlight"; 
HtmlGenericControl mySourceParam = new HtmlGenericControl("param"); 
mySourceParam.Attributes["name"] = "source"; 
mySourceParam.Attributes["value"] = "ClientBin/SilverlightApp.xap"; 
myHtmlObject.Controls.Add(mySourceParam); 
HtmlGenericControl myOnErrorParam = new HtmlGenericControl("param"); 
myOnErrorParam.Attributes["name"] = "onError"; 
myOnErrorParam.Attributes["value"] = "onSilverlightError"; 
myHtmlObject.Controls.Add(myOnErrorParam); 
myHtmlObject.Attributes["width"] = "100%"; 
myHtmlObject.Attributes["height"] = "100%"; 
panelSilverlightHost.Controls.Add(myHtmlObject); 

Sin embargo, la fuente HTML de los distintos navegadores tiene el mismo aspecto.

página HTML desde Firefox:

<object data="data:application/x-silverlight" 
    type="application/x-silverlight" width="100%" 
height="100%"> 
    <param name="source" value="ClientBin/SilverlightApp.xap"></param> 
    <param name="onError" value="onSilverlightError"></param> 
</object> 

Esto es exactamente igual que en Chrome, Internet Explorer y Safari.

He intentado otras aplicaciones SL 5 de muestra (aunque no cargadas dinámicamente) y funcionan bien en Firefox.

Probé diferentes versiones de Firefox en diferentes máquinas. No está ayudando. Cualquier sugerencia sobre lo que podría estar mal aquí sería muy útil.

+0

El código parece estar bien. Esto parece ser un problema con Firefox. – blitzkriegz

+0

Todos los problemas que he tenido con Firefox que no muestra mis objetos Silverlight se han resuelto aplicando un alto y ancho al div que los incluye. (no 100%, pero el valor numérico) – bperreault

Respuesta

4

El atributo data no hay datos válidos: URI, por lo que no se carga nada. ¿El uso de un URI válido (necesita al menos una coma después del tipo) ayuda?

+0

Estoy seguro de que el atributo de datos allí es correcto. El OP ha mencionado que funciona bien en otros navegadores. – Nemo

+2

La sintaxis para un dato: URI está en http://www.ietf.org/rfc/rfc2397.txt sección 3 y requiere la coma después del tipo. Algunos navegadores pueden aceptarlo aunque esté mal formado, pero eso no lo hace correcto. –

+1

@ Boris Zbarsky: +1. También recuerdo haber leído en alguna parte que la coma final era necesaria para admitir la compatibilidad con Firefox. –

Cuestiones relacionadas