ARTICLE AD BOX
I am currently learning WPF (C#) and trying to build a small Bicycle Management application for practice. I understand the basics individually (WPF controls, simple classes, MySQL connections, etc.), but I am struggling to understand how these pieces should be connected together in a clean beginner-friendly structure.
The application currently has these requirements:
3 separate Windows Grid-based layouts Navigation between windows using Button clicks Displaying bicycle images with an Image control A Bicycle class with properties such as Brand, Type, Price and Color Creating Bicycle objects from user input Temporarily storing them in a List or ObservableCollection Connecting to a MySQL database Inserting bicycle records into the database Querying bicycles and displaying them in a DataGridFor example, I currently have a simple model class like this:
public class Bicycle { public int Id { get; set; } public string Brand { get; set; } public string Type { get; set; } public int Price { get; set; } public string Color { get; set; } }Navigation between windows is currently handled from button click events:
private void OpenListWindow(object sender, RoutedEventArgs e) { BicycleListWindow window = new BicycleListWindow(); window.Show(); }I also already have a working MySQL connection and basic INSERT / SELECT queries, but I am unsure where this logic should ideally be placed in a beginner WPF application.
My main problem is understanding the overall structure of the application and how these concepts are usually connected together.
Some specific things I am unsure about:
I am not looking for a production-level enterprise architecture yet. I mainly want to understand how a simple WPF application with multiple windows and database CRUD operations should be organized while learning.
