protected void SetLocation(Web.UI.Sheer.ClientPipelineArgs args)
 {
     if (args.IsPostBack)
     {
         if (args.HasResult && this.Value.Equals(args.Result) == false)
         {
             this.SetModified();
             this.SetValue(args.Result);
         }
     }
     else
     {
         //show popup
         var url   = UIUtil.GetUri("control:MapLocationPickerDialog");
         var value = this.GetValue();
         if (!string.IsNullOrEmpty(value))
         {
             url = $"{url}&value={value}";
         }
         Web.UI.Sheer.SheerResponse.ShowModalDialog(url, "800", "600", "", true);
         args.WaitForPostBack();
     }
 }
 protected void ClearLocation(Web.UI.Sheer.ClientPipelineArgs args)
 {
     this.SetValue(string.Empty);
     this.SetModified();
 }