出于某种原因,这对我不起作用,我不确定。我正在尝试为我的webbrowser创建一个Set Home Page按钮,这是检查页面是否已设置的代码,然后转到页面:
Dim HomepageInfo As String
If IO.File.Exists(Environment.SpecialFolder.ApplicationData & "\Homepage.Info") = True Then
HomepageInfo = IO.File.ReadAllText(Environment.SpecialFolder.ApplicationData & "\Homepage.Info")
WebBrowser1.Url = HomepageInfo.ToString
Else
'Create a File with a Default Homepage (www.google.com)
IO.File.WriteAllText(Environment.SpecialFolder.ApplicationData & "\Homepage.Info", "www.google.com")
End If
这显示为一个错误:HomepageInfo.ToString,错误是:“类型'String'的值无法转换为'System.Uri'。”
感谢您的帮助!
答案 0 :(得分:0)
WebBrowser.Url
属性接受uri对象而不是字符串:
属性值类型:System.Uri表示URL的URL的Uri 当前文件。
所以你必须使用Uri
类的实例:
提供统一资源标识符的对象表示 (URI)并且可以轻松访问URI的各个部分。
代码:
Dim HomepageInfo As String
If IO.File.Exists(Environment.SpecialFolder.ApplicationData & "\Homepage.Info") = True Then
HomepageInfo = IO.File.ReadAllText(Environment.SpecialFolder.ApplicationData & "\Homepage.Info")
WebBrowser1.Url = New Uri(HomepageInfo.ToString)
Else
'Create a File with a Default Homepage (www.google.com)
IO.File.WriteAllText(Environment.SpecialFolder.ApplicationData & "\Homepage.Info", "www.google.com")
End If
答案 1 :(得分:0)
尝试必须像这样使用
WebBrowser1.Url = new Uri(HomepageInfo.ToString);
答案 2 :(得分:0)
非常简单:你的WebBrowser1.Url不是一个字符串,而是一个URL - 一个URL不是一个字符串,但是行为不合适,例如:用于检查URL有效性的选项。
您可以构建一个新的URL来规避此问题: WebBrowser1.Url = new Uri(HomepageInfo.ToString)
但是这可能会失败,因为给定的字符串不是有效的URL。