Передача параметра в пользовательский элемент управления Silverlight - PullRequest
0 голосов
/ 12 ноября 2010

В коде пользовательского элемента управления 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 />

Что я делаю не так? Я вообще двигаюсь в правильном направлении?

1 Ответ

1 голос
/ 12 ноября 2010

как насчет использования initParams? http://www.dotnetspider.com/Silverlight-Tutorial-313.aspx

...