自定义 GMapControl 异常磁贴

本文关键字:异常 GMapControl 自定义 | 更新日期: 2023-09-27 18:36:14

我在C#编程中使用GMapControl。我正在从组合框中选择地图类型。选择后,将显示相应的地图。如果地图不可用或互联网无法正常工作,它会使用异常图块加载地图。我想在我的地图控件中自定义异常磁贴。映射名称取自 GMapProviders。

comboBox1.DataSource = GMapProviders.List.ToArray();
private void comboBox1_SelectedIndexChanged(object sender, EventArgs e)
{
    try
    {
        MainMap.MapProvider = (GMapProvider)comboBox1.SelectedItem;
    }
    catch { MessageBox.Show("Sorry No map Available"); }
}

如何自定义异常磁贴?它永远不会进入异常部分。

自定义 GMapControl 异常磁贴

假设WinForms基于上面的代码。简而言之,您的选择在当前状态下受到限制。

假设您没有缓存的切片,也没有可用的互联网连接,则从 gmap.net 绘制(空)切片。

您可以通过编辑地图的Empty[...]属性(背景、文本等)来更改外观,如下所示:

MainMap.EmptyTileText = "Sorry, no data available.";
MainMap.EmptyTileColor = Color.Beige;
MainMap.EmptyMapBackground = Color.BlanchedAlmond;

但是你不会摆脱异常,即被烘焙到磁贴中(至少我没有找到简单的方法),引用这段代码。