我想通過三個額外的參數給事件:C#傳遞額外的參數給事件
geocodeService.GeocodeCompleted += new EventHandler<GeocodeService.GeocodeCompletedEventArgs>(geocodeService_GeocodeCompleted);
的參數是
int id
string color
double heading
private void Geocode(string strAddress, int waypointIndex, int id, string color, double heading) { // Create the service variable and set the callback method using the GeocodeCompleted property. GeocodeService.GeocodeServiceClient geocodeService = new GeocodeService.GeocodeServiceClient("BasicHttpBinding_IGeocodeService"); // NEED TO PASS id, color, heading TO THIS EVENT HANDLER geocodeService.GeocodeCompleted += new EventHandler<GeocodeService.GeocodeCompletedEventArgs>(geocodeService_GeocodeCompleted); GeocodeService.GeocodeRequest geocodeRequest = new GeocodeService.GeocodeRequest(); geocodeRequest.Credentials = new Credentials(); geocodeRequest.Credentials.ApplicationId = ((ApplicationIdCredentialsProvider)BingMap.CredentialsProvider).ApplicationId; geocodeRequest.Query = strAddress; geocodeService.GeocodeAsync(geocodeRequest, waypointIndex); } private void geocodeService_GeocodeCompleted(object sender, GeocodeService.GeocodeCompletedEventArgs e) { GeocodeResult result = null; if (e.Result.Results.Count > 0) { result = e.Result.Results[0]; if (result != null) { // this.ShowMarker(result); this.ShowShip(result); } } }
哪裏引發的事件?我懷疑在GeocodeAysnc方法中,有什麼方法可以看到這種方法嗎? – LukeHennerley
@Solo你試過我的建議嗎? – giammin