当我尝试将URL作为Button的标记发送到浏览器时,我遇到了问题。看看我在做什么:
<Button Content="101" Tag="http://stackoverflow.com/questions/ask" Width="446" Click="Button_Click" />
导航到浏览器页面:
private void Button_Click(object sender, RoutedEventArgs e)
{
NavigationService.Navigate(
new Uri("/webbrowser.xaml?path=" +
HttpUtility.UrlEncode((sender as Button).Tag.ToString()),
UriKind.Absolute));
}
在webbrowser.xaml上我有:
<phone:WebBrowser x:Name="MiniBrowser" HorizontalAlignment="Left"
IsGeolocationEnabled="True" IsScriptEnabled="True" Width="456" Margin="0,0,0,10"/>
并在webbrowser.xaml.cs上:
protected override void OnNavigatedTo(NavigationEventArgs e)
{
string path = "";
if (NavigationContext.QueryString.TryGetValue("path", out path))
{
if (!string.IsNullOrWhiteSpace(path))
{
MiniBrowser.Navigate(new Uri(path, UriKind.Absolute));
}
}
}
有人可以解释一下我做错了什么吗?当我按下按钮时,我有Debuger.Break(); : - (
答案 0 :(得分:0)
我认为,没有必要在传递时对其进行编码,如果是强制性的,请在传递给浏览器时对其进行解码