В коде пользовательского элемента управления Silverlight есть метод, которому я должен передать строковый параметр. Я пытаюсь следующим образом, но получаю ошибку System.Collections.Generic.KeyNotFoundException
Сообщение = Ключ не найден в словаре.
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
}
..........
и я называю эту страницу следующим образом:
string idstr = xxxx; // my value
this.NavigationService.Navigate(new
System.Uri("/MyPage?id=" + idstr, System.UriKind.Relative));
И приведенная выше строка Uri отображается в браузере как задумано (если я не пытаюсь проанализировать ее при инициализации моего UserControls).
MyUserControl вызывается в MyPage XAML (куда я перехожу):
<uc:MyUserControl />
Что я делаю не так? Я вообще двигаюсь в правильном направлении?