2011-06-29 6 views
2

Je dois être en mesure de charger la page html avec le module Silverlight présentant le contenu en fonction de la page à laquelle on a accédé. Par exemple, si la demande d'ouverture de la page provient de Page1.html, le contenu affichera Content.1. J'ai essayé de travailler dessus mais j'ai besoin de plus d'informations. Toute aide est très appréciée:Silverlight deep linking ne pas utiliser les pages et le cadre?

Voici mon code: HTML: attribuer un nouveau param:

<param name="inputParams" value="Page1.html" /> 

Il peut être une autre chaîne url.

code Silverlight dans App.xaml.cs

private void Application_Startup(object sender, StartupEventArgs e) 
    { 
     this.RootVisual = new MainPage(); 
     if (e.InitParams != null) 
     { 
      string ValueParam = e.InitParams["value"]; 
     } 
    } 

MainPage.xaml.cs

public MainPage() 
    { 
     InitializeComponent(); 

     this.Loaded += new RoutedEventHandler(MainPage_Loaded); 

    } 

    void MainPage_Loaded(object sender, RoutedEventArgs e) 
    { 
     if (ValueParam = ?) 
     { 
      contentIndex =1; 
     } 
    } 

Répondre

2

La valeur du paramètre initParams lui-même devrait être une virgule série séparée de nom = valeur paires.

Votre élément param devrait ressembler à ceci: -

<param name="inputParams" value="value=Page1.html" /> 

Cela dit que votre exigence spécifique, vous pouvez le à l'URL de la page d'accueil via l'objet HtmlPage. Cela peut vous éviter de devoir copier spécifiquement le nom de la page dans chaque initParams pour chaque page.

+0

Merci beaucoup pour l'information. Je vais essayer ça. – vladc77

Questions connexes