由于项目中使用到百度地图,并且不能连外网,这就需要使用离线瓦片地图。但是在引用本地html时发现不能调用js中的函数,找了很久网上都说使用绝对路径,试了一下很好用,下面贴出代码。
private void map_Click(object sender, RoutedEventArgs e)
{
System.Windows.Forms.OpenFileDialog dialog = new
System.Windows.Forms.OpenFileDialog();
dialog.Multiselect = true;//该值确定是否可以选择多个文件
dialog.Title = "请选择文件夹";
dialog.Filter = "地图文件(*.html)|*.html";
string file = "";
if (dialog.ShowDialog() == System.Windows.Forms.DialogResult.OK)
{
file = dialog.FileName;
}
Uri uri = new Uri(file);
try
{
webMap.Navigate(uri);
}
catch (Exception ex)
{
MessageBox.Show(ex.ToString());
}
}
上面代码中webMap就是WebBrowser对象。