Al realizar una consulta a un servidor el resultado de la misma se obtiene en el Eventhandler y por lo tanto de modo asíncrono.
Por ello no puedo crear una función que consulte y devuelva el valor, como mucho podré establecer una variable a ese valor, pero sin garantías de que el valor sea resultado de la consulta.
Lo lógico es que continúe el proceso en el Eventhandler pero eso no es siempre posible y me limita mucho pues no puedo reutilizar funciones.
Además, ¿ cómo puedo obtener valores de dos consultas distintas para continuar el proceso ? Tengo que esperar al EventHandler de ambas, pero ¿cómo?.
Todos los ejemplos que he visto son del tipo establecer texto en pantalla, cargar datagrid, etc. pero no he visto nada que trabaje con un valor devuelto para continuar procesandolo.
Por ejemplo: Supongamos que consulto X a un servidor e Y a otro para luego mostrar X+Y en pantalla, los valores de vuelta están en los EventHandler de cada consulta, no puedo continuar hasta que no conozco los valores, ambos.
Estoy acostumbrado a funciones síncronas devolviendo valores, supongo que tengo que cambiar el método pero no encuentro solución.