在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初始化中解析它)。
在MyPage XAML(我导航到的地方)中调用MyUserControl:
<uc:MyUserControl />
我做错了什么?我是否正朝着正确的方向前进?