2010-11-12 10 views
0

Dans un fichier de code utilisateur Silverlight User Control, il existe une méthode à laquelle je devrais transmettre un paramètre de chaîne. J'essaie de la façon suivante mais je reçois une erreur System.Collections.Generic.KeyNotFoundException Message = La clé est introuvable dans le dictionnaire.Passage d'un paramètre à un contrôle utilisateur Silverlight

public partial class MyUserControl : UserControl 
{ 
    public MyUserControl() 
    { 
     InitializeComponent(); 
     string strid = HtmlPage.Document.QueryString["id"]; // this way it doesn't work 
     ReadAndUpdate(strid); 
    } 

    private void ReadAndUpdate(string shid) 
    { 
      //some stuff here 
    } 
.......... 

et j'appelle cette page comme ce qui suit:

 string idstr = xxxx; // my value 
     this.NavigationService.Navigate(new 
        System.Uri("/MyPage?id=" + idstr, System.UriKind.Relative)); 

Et ce qui précède Uri chaîne est apparue dans le navigateur comme prévu (si je ne cherche pas à analyser dans mes UserControls' initialisation).

MyUserControl est appelé dans le MaPage XAML (où je navigue à):

<uc:MyUserControl /> 

Qu'est-ce que je fais mal? Est-ce que je me dirige dans la bonne direction?

Répondre