Buenas,
 
Hay varias formas de hacerlo dependiendo de la versión del framework que uses. 
Una de ellas es (creo que funciona a partir del framework 3.0):    
Código C#:
Ver original- private void OKButton_Click(object sender, RoutedEventArgs e) 
- { 
- try 
- { 
-   
-   
- WCFCabañas.CabañaClient ServicioCabañas = new WCFCabañas.CabañaClient(); 
-   
- ServicioCabañas.AgregarCabañaCompleted += (sender, e) => 
- { 
- try 
- { 
- if (e.Error == null) 
- { 
- MessageBox.Show("El registro se modificó correcamente."); 
- this.DialogResult = true; 
- } 
- } 
- catch (Exception) 
- { 
- throw; 
- } 
- }; 
-   
-   
- ServicioCabañas.AgregarCabañaAsync(LibCabañas); 
-   
- } 
- catch (Exception) 
- { 
- throw; 
- } 
- }