您可以测试是否已经bar.text以http://开头是这样的:
private void bargo_Click(object sender, RoutedEventArgs e)
{
string url = bar.Text;
if (!url.StartsWith("http://"))
{
url = "http://" + url;
}
web.Navigate(new Uri(url);
}
如果用户输入 “https://开头”或“ftp://”(或gopher://,irc://,ircs://,ftp://,news://,nntp://,worldwind://,telnet://,svn ://,git://,mms://和mailto :)此方法仍会添加“http://”并失败。
更好的解决方案是将字符串传递到web.Navigate()而不是uri。当你传入一个字符串时,WebBrowser控件会自动添加http://就像浏览器一样。
private void bargo_Click(object sender, RoutedEventArgs e)
{
web.Navigate(bar.Text);
}
编辑:对于Windows Phone 7的
private void bargo_Click(object sender, RoutedEventArgs e)
{
web.NavigateToString(bar.Text);
}
所以测试的 “http://” 输入,要么删除或不添加它。这个问题是什么? – PhoenixReborn
'if(!bar.Text.Contains(“http://”))'? –
点击按钮后,如何让文本框松开焦点 – Ravi