private void Button_Click_1(object sender, RoutedEventArgs e)
{
if (_routeLayer.Features.Count > 1)
{
_routeLayer.Features.RemoveAt(1);
}
if (string.IsNullOrEmpty(StartValue.Text) || string.IsNullOrEmpty(EndValue.Text))
{
MessageBox.Show("请输入里程值!");
return;
}
Route route = new Route();
if (_routeLayer.Features.Count > 0)
{
Feature f = _routeLayer.Features[0];
route = f.Geometry as Route;
}
double sValue = 0;
double.TryParse(StartValue.Text, out sValue);
double eValue = 0;
double.TryParse(EndValue.Text, out eValue);
if (_routeLayer.Features.Count > 0)
{
Feature f = _routeLayer.Features[0];
route = f.Geometry as Route;
}
RouteLocatorParameters param = new RouteLocatorParameters();
param.SourceRoute = route;
param.Type = LocateType.LINE;
param.StartMeasure = sValue;
param.EndMeasure = eValue;
param.IsIgnoreGap = false;
RouteLocatorService service = new RouteLocatorService(_serviceUrl);
service.ProcessAsync(param);
service.ProcessCompleted += new EventHandler<RouteLocatorEventArgs>(service_ProcessCompleted);
service.Failed += new EventHandler<ServiceFailedEventArgs>(service_Failed);
}