Silverlight con parametros

Esta mañana tenia la necesidad de compartir un pequeño control de Silverlight en varias paginas y tenia que mostrar secciones distintas según la pagina que la llamaba.

La primera idea que tuve (y esa he aplicado) es pasarle parametros al silverlight mediante su propiedad InitParametrers tal como esto:

<asp:Silverlight ID="Silverlight1" runat="server" Source="~/ClientBin/ComponentesSilverlight.xap" MinimuVersion="2.0.31005.0" Width="100%" Height="100%" InitParameters="pantalla=enlaces" />

Con esta llamada al elemento Silverlight podremos obtener los parametros en el Startup de App.aspx.cs tal como sigue:

private void Application_Startup(object sender, StartupEventArgs e)
{
string pantalla = string.Empty;
if(e.InitParams.Keys.Contains("pantalla")) pantalla = e.InitParams["pantalla"];
this.RootVisual = new Page(pantalla);
}

Y pos supuesto tendremos que cambiar el constructor de la clase Page del componente Silverlight con el/los parametros que vamos a utilizar por ejemplo:


private string _pantalla;

public Page(string pantalla)
{
InitializeComponent();
_pantalla = pantalla;
}

Luego podremos usar la variable privada _pantalla para lo que pretendamos.

Buscar este blog

Seguidores

Blogs amigos