Exception Details: System.InvalidOperationException: No se puede mostrar un cuadro de diálogo o formulario modal cuando la aplicación no está en modo UserInteractive. Especifique el estilo ServiceNotification o DefaultDesktopOnly para mostrar una notificación de una aplicación de servicio.
En la siguiente línea de código:
DialogResult result = MessageBox.Show("¿Desea borrar el perfil
seleccionado?",
"Confirmación", MessageBoxButtons.YesNo);
Según he leido viene dado porque los messagebox no se pueden poner en una
aplicación web por el tema del cliente y el servidor.
Después de darle muchas vueltas he llegado a una solución bastante
sencilla.
Lo he encontrado en esta dirección.
Al parecer existe para los botones una opción que es la de OnClientClick
que ejecuta
si está en el servidor.
<asp:Button ID="Button1" runat="server"
OnClientClick="return confirm('Are you sure you want to delete?');"
onclick="Button1_Click" Text="Delete" />
Con este elemento podemos decir que primero muestre una ventana de
confirmación y si
es true, entra en Button1_Click, y si es false no hace nada
Espero que a alguie le sea de ayuda ya que me ha costado bastante
encontrar esta
solución.
También lo he encontrado para este tipo de botón:
<dx:ASPxButton ID="ASPxButtonBorrar" runat="server" style="margin-left:0px"
onclick="ASPxButtonBorrar_Click" Visible="true" >
<Image Url="~/iconos/borrar.png" Height="30px" Width="70px">
</Image>
<Border BorderColor="White" BorderStyle="Outset" BorderWidth="5px" />
<ClientSideEvents Click="function(s,e){e.processOnServer = confirm('¿Está
seguro de borrar el registro?');}" />
</dx:ASPxButton>
BUEN APORTE
ResponderEliminarExcelente, siempre me pareció tan complejo esto... pero veo que no lo es tanto. Gracias.
ResponderEliminar