Complete Applications
Full application examples built with Beep Controls
Dashboard Application
A complete dashboard layout using Beep Controls featuring a side menu, app bar, stat cards, charts, and a data grid.
public class DashboardForm : Form
{
public DashboardForm()
{
this.Text = "Dashboard";
this.Size = new Size(1200, 800);
// App bar at the top
var appBar = new BeepAppBar();
appBar.Dock = DockStyle.Top;
appBar.Title = "My Dashboard";
// Side menu on the left
var sideMenu = new BeepSideMenu();
sideMenu.Dock = DockStyle.Left;
sideMenu.Width = 220;
sideMenu.AddMenuItem("Home", "home.svg");
sideMenu.AddMenuItem("Analytics", "chart.svg");
sideMenu.AddMenuItem("Users", "users.svg");
sideMenu.AddMenuItem("Settings", "gear.svg");
// Main content panel
var content = new BeepPanel();
content.Dock = DockStyle.Fill;
// Stat cards row
var stats = new FlowLayoutPanel { Dock = DockStyle.Top, Height = 120 };
stats.Controls.Add(CreateStatCard("Total Users", "1,234", "+12%"));
stats.Controls.Add(CreateStatCard("Revenue", "$45,678", "+8%"));
stats.Controls.Add(CreateStatCard("Orders", "567", "+3%"));
stats.Controls.Add(CreateStatCard("Growth", "23%", "+5%"));
content.Controls.Add(stats);
// Data grid
var grid = new BeepSimpleGrid();
grid.Dock = DockStyle.Fill;
grid.DataSource = GetRecentOrders();
content.Controls.Add(grid);
this.Controls.AddRange(new Control[] { content, sideMenu, appBar });
}
private BeepStatCard CreateStatCard(string title, string value, string trend)
{
return new BeepStatCard
{
Title = title,
Value = value,
Trend = trend,
Size = new Size(200, 100),
Margin = new Padding(10)
};
}
}
Data Entry Application
A CRUD application with a grid, navigation bar, and form fields for data entry.
public class DataEntryForm : Form
{
private BeepSimpleGrid _grid;
private BeepBindingNavigator _navigator;
public DataEntryForm()
{
this.Text = "Product Manager";
this.Size = new Size(900, 600);
// Grid for data display
_grid = new BeepSimpleGrid();
_grid.Dock = DockStyle.Fill;
_grid.DataSource = GetProducts();
// Navigator bar at bottom
_navigator = new BeepBindingNavigator();
_navigator.Dock = DockStyle.Bottom;
_navigator.Grid = _grid;
_navigator.AddClicked += (s, e) => ShowEditDialog(null);
_navigator.EditClicked += (s, e) => ShowEditDialog(_grid.CurrentRow);
_navigator.DeleteClicked += (s, e) => DeleteCurrentRow();
this.Controls.Add(_grid);
this.Controls.Add(_navigator);
}
private void ShowEditDialog(object row)
{
var dialog = new BeepDialogBox();
dialog.Title = row == null ? "Add Product" : "Edit Product";
dialog.Size = new Size(400, 300);
// Add form fields to dialog...
dialog.ShowDialog(this);
}
}
Settings Application
A settings panel using tabs, switches, and combo boxes.
public class SettingsForm : Form
{
public SettingsForm()
{
this.Text = "Settings";
this.Size = new Size(700, 500);
var tabs = new BeepTabControl();
tabs.Dock = DockStyle.Fill;
// General tab
var generalPanel = CreateGeneralSettings();
tabs.AddTab("General", generalPanel);
// Appearance tab
var appearancePanel = CreateAppearanceSettings();
tabs.AddTab("Appearance", appearancePanel);
// Notifications tab
var notifPanel = CreateNotificationSettings();
tabs.AddTab("Notifications", notifPanel);
this.Controls.Add(tabs);
}
private Panel CreateAppearanceSettings()
{
var panel = new BeepPanel();
var themeLabel = new BeepLabel { Text = "Theme:", Location = new Point(20, 20) };
var themeCombo = new BeepComboBox { Location = new Point(20, 50), Size = new Size(250, 35) };
// Populate themes...
var darkMode = new BeepSwitch { Text = "Dark Mode", Location = new Point(20, 100) };
var animations = new BeepSwitch { Text = "Enable Animations", Location = new Point(20, 140) };
panel.Controls.AddRange(new Control[] { themeLabel, themeCombo, darkMode, animations });
return panel;
}
}