Complete ShellDemo application demonstrating all MAUI controls: - App/AppShell: Shell navigation with flyout menu - HomePage: Feature cards, theme toggle, quick actions - ButtonsPage: Button styles, states, variations, event logging - TextInputPage: Entry, Editor, SearchBar with keyboard shortcuts - SelectionPage: CheckBox, Switch, Slider with colored variants - PickersPage: Picker, DatePicker, TimePicker demos - ListsPage: CollectionView with fruits, colors, contacts - ProgressPage: ProgressBar, ActivityIndicator, interactive demo - GridsPage: Grid layouts - auto/star/absolute sizing, spans, nesting - AboutPage: OpenMaui Linux information - DetailPage: Push/pop navigation demo All pages use proper XAML with code-behind following MAUI patterns. 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Opus 4.5 <noreply@anthropic.com>
94 lines
2.3 KiB
C#
94 lines
2.3 KiB
C#
using System;
|
|
using Microsoft.Maui.Controls;
|
|
|
|
namespace ShellDemo.Pages;
|
|
|
|
public partial class ButtonsPage : ContentPage
|
|
{
|
|
private int _eventCount = 0;
|
|
|
|
public ButtonsPage()
|
|
{
|
|
InitializeComponent();
|
|
}
|
|
|
|
private void LogEvent(string message)
|
|
{
|
|
_eventCount++;
|
|
var timestamp = DateTime.Now.ToString("HH:mm:ss");
|
|
EventLog.Text = $"[{timestamp}] {_eventCount}. {message}\n{EventLog.Text}";
|
|
}
|
|
|
|
private void OnDefaultButtonClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Default Button clicked");
|
|
}
|
|
|
|
private void OnDefaultButtonPressed(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Default Button pressed");
|
|
}
|
|
|
|
private void OnDefaultButtonReleased(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Default Button released");
|
|
}
|
|
|
|
private void OnTextButtonClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Text Button clicked");
|
|
}
|
|
|
|
private void OnPrimaryClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Primary button clicked");
|
|
}
|
|
|
|
private void OnSuccessClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Success button clicked");
|
|
}
|
|
|
|
private void OnWarningClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Warning button clicked");
|
|
}
|
|
|
|
private void OnDangerClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Danger button clicked");
|
|
}
|
|
|
|
private void OnPurpleClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Purple button clicked");
|
|
}
|
|
|
|
private void OnEnabledClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Enabled button clicked");
|
|
}
|
|
|
|
private void OnToggleClicked(object? sender, EventArgs e)
|
|
{
|
|
DisabledButton.IsEnabled = !DisabledButton.IsEnabled;
|
|
DisabledButton.Text = DisabledButton.IsEnabled ? "Now Enabled!" : "Disabled Button";
|
|
LogEvent($"Toggled button to: {(DisabledButton.IsEnabled ? "Enabled" : "Disabled")}");
|
|
}
|
|
|
|
private void OnWideClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Wide button clicked");
|
|
}
|
|
|
|
private void OnTallClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Tall button clicked");
|
|
}
|
|
|
|
private void OnRoundClicked(object? sender, EventArgs e)
|
|
{
|
|
LogEvent("Round button clicked");
|
|
}
|
|
}
|