¿Estás aprendiendo a programar en C# con Windows Forms? Hoy te muestro cómo desarrollar una sencilla aplicación para gestionar tus tareas pendientes (To-Do List). Es un proyecto ideal si estás comenzando y quieres practicar eventos, controles gráficos y lógica básica.
🎯 ¿Qué vamos a crear?
Una aplicación de escritorio con las siguientes funcionalidades:
- Agregar nuevas tareas
- Mostrar tareas en una lista
- Marcar tareas como completadas
- Eliminar tareas seleccionadas
- (Opcional) Guardar y cargar las tareas desde un archivo
🧱 Paso 1: Crear el proyecto
- Abre Visual Studio.
- Selecciona Nuevo proyecto.
- Escoge Aplicación de Windows Forms (.NET Framework) en C#.
- Nombra tu proyecto, por ejemplo:
ToDoApp
.
🧰 Paso 2: Diseñar la interfaz
Desde el diseñador de formularios (Form1.cs [Diseño]
), arrastra los siguientes controles desde la caja de herramientas:
TextBox
→ Para escribir la tarea (txtTarea
)Button
→ Para añadir tarea (btnAgregar
)ListBox
→ Para listar tareas (lstTareas
)Button
→ Para marcar tarea como completada (btnCompletar
)Button
→ Para eliminar tarea (btnEliminar
)
Organiza los controles de forma clara y añade textos descriptivos en los botones.
💻 Paso 3: Programar la lógica
Abre Form1.cs
y añade el siguiente código:
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
}
private void btnAgregar_Click(object sender, EventArgs e)
{
string tarea = txtTarea.Text.Trim();
if (!string.IsNullOrEmpty(tarea))
{
lstTareas.Items.Add(tarea);
txtTarea.Clear();
}
}
private void btnCompletar_Click(object sender, EventArgs e)
{
int index = lstTareas.SelectedIndex;
if (index != -1 && !lstTareas.Items[index].ToString().StartsWith("[✔] "))
{
lstTareas.Items[index] = "[✔] " + lstTareas.Items[index];
}
}
private void btnEliminar_Click(object sender, EventArgs e)
{
if (lstTareas.SelectedIndex != -1)
{
lstTareas.Items.RemoveAt(lstTareas.SelectedIndex);
}
}
}
🧪 Paso 4: Ejecutar y probar
Presiona F5 para compilar y ejecutar. Prueba a:
- Añadir varias tareas.
- Marcarlas como completadas.
- Eliminar alguna de ellas.
💡 Extensiones recomendadas (opcional)
- Guardar y cargar tareas usando
StreamWriter
yStreamReader
. - Cambiar el color o la fuente de tareas completadas.
- Mostrar un contador de tareas pendientes.
🧠 Conclusión
Este proyecto es perfecto para afianzar tus conocimientos de programación orientada a eventos en C#. Has trabajado con controles gráficos, gestionado listas y manipulado texto de forma básica. ¡Sigue practicando y añade nuevas mejoras!
Contenido restringido
Comments are closed