Publicando mi primer componente de .NET 6: ResultsForm
Hola a todos,
Hoy, estoy publicando mi primer proyecto de .NET 6: ResultsForm.
ResultsForm es una clase de Windows Forms .NET 6 que puedes usar para pasar un objecto List(Of String) para mostrar la salida o resultados de tu programa en una ventana simple. Posee la abilidad de guardar el texto en un archivo log y la ventana puede ser modificada.
Para usar este formulario, simplemente la llamamos así en Visual Basic.NET
'Creamos un objecto de lista de strings y añadimos un item.
Dim logItems as New List(Of String)
logItems.Add(Now.ToString() + " || This is a log item")
'Creamos el objecto del formulario y pasamos la lista de string al mismo. Luego, mostramos el forumario.
Dim results As New ResultsForm.ResultsForm With {
.ResultItems = logItems
}
results.ShowDialog()
Este código tiene el siguiente resultado:
Puedes modificar el texto del label «Output Log:» usando el atributo FormMessage:
'Creamos un objecto de lista de strings y añadimos un item.
Dim logItems As New List(Of String)
logItems.Add(Now.ToString() + " || This is a log item")
'Creamos el objecto del formulario y pasamos la lista de string al mismo. Luego, mostramos el forumario.
Dim results As New ResultsForm.ResultsForm With {
.ResultItems = logItems,
.FormMessage = "The results are below:"
}
Este código tiene el siguiente resultado:
El nombre del archivo de resultados por defecto es «Log.log», pero lo puedes cambiar pasando un nombre de archivo sin la extensión al atributo DefaultLogFilename:
'Creamos un objecto de lista de strings y añadimos un item.
Dim logItems As New List(Of String)
logItems.Add(Now.ToString() + " || This is a log item")
'Creamos el objecto del formulario y pasamos la lista de string al mismo. Luego, mostramos el forumario.
Dim results As New ResultsForm.ResultsForm With {
.ResultItems = logItems,
.FormMessage = "The results are below:",
.DefaultLogFilename = "Results"
}
Entonces, al oprimir el botón «Save Log», el nombre del archivo por defecto será «Results.log».
Si estás localizando el programa o si por defecto es en español, puedes cambiar el texto del formulario para que sea mostrado en español pasando el valor «es» al atributo Language:
'Creamos un objecto de lista de strings y añadimos un item.
Dim logItems As New List(Of String)
logItems.Add(Now.ToString() + " || Esta es una entrada en el log.")
'Creamos el objecto del formulario y pasamos la lista de string al mismo. Luego, mostramos el forumario.
Dim results As New ResultsForm.ResultsForm With {
.ResultItems = logItems,
.Language = "es"
}
Podemos observar que este formulario puede ser conveniente en un programa. Puedes echarle un vistazo al código clonando el repositorio, compilando el componente e importándolo en tus proyectos. El repositorio se encuentra aquí. También puedes descargar el componente precompilado y listo para ser importado en tus proyectos.
Estoy en el proceso de usar este componente en mis herramientas de conversión de archivos multimedia. Actualmente estas herramientas muestran un mensaje de finalización, pero con este cambio a este formulario, el usuario sabrá qué archivos fueron convertidos y cuales fueron omitidos.
¡Espero que este componente les sea util en sus proyectos!