internal void _Start() { base.ScriptErrorsSuppressed = true; if (System.Net.NetworkInformation.NetworkInterface.GetIsNetworkAvailable()) { // ネットワークが利用できるので、MAPスクリプトを読み込みます switch (_provider) { case MapProvider.GOOGLE: base.DocumentText = Properties.Resources.googlemapsHTML.Replace("[[KEY]]", _key); break; case MapProvider.YAHOO: base.DocumentText = Properties.Resources.yahoomapsHTML.Replace("[[KEY]]", _key); break; default: new Exception("不正なプロバイダです"); return; } } else { // ネットワークが利用できない lock (_proxy) { _proxy = new DocumentStateNetworkNotAvailable(this); } } }
public MapControl() { InitializeComponent(); _proxy = new DocumentStateNotInitialized(this); base.ObjectForScripting = this; }
public void drawPolyline() { lock (_proxy) { try { _proxy = _proxy.drawPolyline(); } catch (Exception) { _proxy = new DocumentStateJavascriptError(this); } } }
public void addPoint(double latitude, double longitude, string title) { lock (_proxy) { try { _proxy = _proxy.addPoint(latitude, longitude, title); } catch (Exception) { _proxy = new DocumentStateJavascriptError(this); } } }
public void clearPoint() { lock (_proxy) { try { _proxy = _proxy.clearPoint(); } catch (Exception) { _proxy = new DocumentStateJavascriptError(this); } } }
public void resizeMap() { lock (_proxy) { try { _proxy = _proxy.resizeMap(); } catch (Exception) { _proxy = new DocumentStateJavascriptError(this); } } }
public void movePos(double latitude, double longitude) { lock (_proxy) { try { _proxy = _proxy.movePos(latitude, longitude); } catch (Exception) { _proxy = new DocumentStateJavascriptError(this); } } }
/// <summary> /// Mapを表示します。 /// </summary> /// <param name="provider">Mapの提供元を設定します</param> /// <param name="key">Key(ID)を設定します</param> /// <param name="delay">ture時、処理メソッドがコールされるまで地図表示をしません。アクセス数低減目的。遅延描画時はDocumentに任意のHTMLを表示できます。</param> public void Initialize(MapProvider provider, string key, bool delay = true) { _provider = provider; _key = key; // すぐに表示する必要がある場合 if (!delay) { lock ( _proxy) { _proxy = new DocumentStateInitalizing(this); _Start(); } } }
protected override void OnResize(EventArgs e) { lock (_proxy) { try { _proxy = _proxy.resizeMap(); } catch (Exception) { _proxy = new DocumentStateJavascriptError(this); } } base.OnResize(e); }
protected override void OnDocumentCompleted(WebBrowserDocumentCompletedEventArgs e) { lock (_proxy) { try { _proxy = _proxy.initializeScript(); } catch (Exception) { _proxy = new DocumentStateJavascriptError(this); } } base.OnDocumentCompleted(e); }