【C#】一个 .NET 开源的地图组件库 - Mapsui
				
									
					
					
						|  | 
							admin 2024年6月25日 21:58
								本文热度 3033 | 
					
				 
				前言
今天大姚给大家分享一个.NET开源(MIT License)、免费、同时支持多平台框架(MAUI、WPF、Avalonia、Uno、Blazor、WinUI、Eto、.NET Android 和 .NET iOS)地图组件库:Mapsui。
项目源代码

支持的UI框架的NuGet包

创建Blazor WebAssembly应用
创建名为:MapsuiExercise的Blazor WebAssembly应用。



安装Mapsui.Blazor NuGet包
在NuGet包管理器中搜索:Mapsui.Blazor安装。

地图组件完整代码
@page "/"
@using Mapsui.UI.Blazor
<PageTitle>MapsuiExercise</PageTitle>
<div class="container">
    <div class="row">
        <div class="col border rounded p-2 canvas-container">
            <MapControlComponent @ref="_mapControl" />
        </div>
    </div>
</div>
<style>
    .canvas-container canvas {
        width: 100%;
        height: 80vh;
    }
</style>
@code
{
    private MapControl? _mapControl;
    protected override void OnAfterRender(bool firstRender)
    {
        base.OnAfterRender(firstRender);
        if (firstRender)
        {
            if (_mapControl != null)
                _mapControl.Map?.Layers.Add(Mapsui.Tiling.OpenStreetMap.CreateTileLayer());
        }
    }
}
运行效果展示



项目源码地址
该文章在 2024/6/25 21:59:33 编辑过