Elektro ErrorDialog
Descripción:
Esto es simplemente un Form propio para controlar excepciones, lo pueden añadir a sus proyectos como una plantilla.
Imágenes:
(En tiempo de ejecución)
(En diseño)
Inspiración:
Para desarrollar este Form me inspiré en la idea y en el diseño del desarrollador de la aplicación "WinToolkit" (Legolash2o), aunque su diálogo está escrito en C#...y no he visto el source, pero me gustó la idea y el diseño, además de esto examiné a fondo y comparé otros diseños y códigos fuente de la página CodeProject.
Demostración:
Ejemplos de uso:
(Ejemplo de uso básico)
Código
Private Shadows Sub Shown(sender As Object, e As EventArgs) _ Handles MyBase.Shown Try Dim Url As New Uri(String.Empty) Catch ex As Exception Using ErrorDialog As New ErrorDialog(ex, sender) ErrorDialog.ShowDialog() End Using End Try End Sub
(Ejemplo de uso avanzado)
Código
Public Class Form1 Public Sub New() ' This call is required by the designer. InitializeComponent() ' Catches Managed Exceptions. AddHandler AppDomain.CurrentDomain.FirstChanceException, AddressOf Application_ManagedException ' Catches Unhandled Exceptions. AddHandler AppDomain.CurrentDomain.UnhandledException, AddressOf Application_UnhandledException ' Catches Thread Exceptions. AddHandler Application.ThreadException, AddressOf Application_ThreadException End Sub ''' <summary> ''' Handles the 'UnhandledException' event of the Application. ''' </summary> ''' <param name="sender">The source of the event.</param> ''' <param name="e">The <see cref="UnhandledExceptionEventArgs"/> instance containing the event data.</param> Private Sub Application_UnhandledException(ByVal sender As Object, ByVal e As UnhandledExceptionEventArgs) Using ErrorDialog As New ErrorDialog(DirectCast(e.ExceptionObject, Exception), Me) ErrorDialog.ShowDialog() End Using End Sub ''' <summary> ''' Handles the 'FirstChanceException' event of the Application. ''' </summary> ''' <param name="sender">The source of the event.</param> ''' <param name="e">The <see cref="Runtime.ExceptionServices.FirstChanceExceptionEventArgs" /> instance containing the event data.</param> Private Sub Application_ManagedException(ByVal sender As Object, ByVal e As Runtime.ExceptionServices.FirstChanceExceptionEventArgs) Using ErrorDialog As New ErrorDialog(e.Exception, Me) ErrorDialog.ShowDialog() End Using End Sub ''' <summary> ''' Handles the 'ThreadException' event of the Application. ''' </summary> ''' <param name="sender">The source of the event.</param> ''' <param name="e">The <see cref="Threading.ThreadExceptionEventArgs"/> instance containing the event data.</param> Private Sub Application_ThreadException(sender As Object, e As Threading.ThreadExceptionEventArgs) Using ErrorDialog As New ErrorDialog(e.Exception, Me) ErrorDialog.ShowDialog() End Using End Sub End Class
Descarga:
http://www.mediafire.com/download/f6caca6bcc9wbwc/Elektro+ErrorDialog.rar