# BackgroundBuilder An MVVM WPF application (.NET 6) providing an Excel-like editor for the `contatos` table in PostgreSQL. ## Prerequisites - .NET 6 SDK - PostgreSQL database with table: ```sql CREATE TABLE public.contatos ( ramal text PRIMARY KEY NOT NULL, nome text NOT NULL, email text, area text, aniversario date, "isComando" boolean NOT NULL ); ``` ## Setup 1. Edit appsettings.json, set your ConnectionStrings:ContatosDb. 2. In a terminal: ```bash dotnet restore dotnet build dotnet run --project BackgroundBuilder.csproj ``` 3. The main window will appear; on load it fetches and displays all contatos. ## Architecture - MVVM with MVVM with ObservableObject, RelayCommand. - DI via Microsoft.Extensions.Hosting. - Repositories (PostgresContatoRepository) handle all DB I/O with Dapper. - Services (DatabaseService) manage the Npgsql connection. - ViewModels free of data-access logic: only orchestration. --- ### New Background & Export Features - **Select Background…** Opens a file picker—choose any image (PNG, JPG, BMP). That image becomes your canvas. - **Create Image…** Saves the current DataGrid overlaid on the background as a single PNG. Uses WPF’s `RenderTargetBitmap` and `PngBitmapEncoder` under the hood. ---