вторник, 19 августа 2014 г.

Использование карт 2GIS в программе на C# через API

Вводная: Необходимо отображение карты 2GIS в приложении Windows Forms.

Решение:
1. Создаём форму

2. Добавляем компонет WebBrowser

3. Добавляем HTML страницу. В неё нужный нам код (для примера возьмём результирующий код с http://api.2gis.ru/doc/maps/quickstart/ )
В свойствах созданного файла нужно выбрать - "Всегда копировать"

4. Создаём событие Load на форме где наш компонент WebBrowser

        private void Form1_Load(object sender, EventArgs e)
        {
            var curDir = Directory.GetCurrentDirectory();
            webBrowser1.Url = new Uri(String.Format("file:///{0}/2GIS.html", curDir));
        }

5. Компилируем.


PS: Можно использовать установленный 2GIS, он может выступать как COM-сервер, но в моём случае было достаточно и допустимо использования webAPI. Если вам нужны работать оффлайн, то - http://plugins.2gis.ru/wiki/Практика:_.NET