A cross-platform UI framework for .NET
You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
 
 
 

50 lines
1.6 KiB

using System.Collections.Generic;
using Avalonia.Controls;
using Avalonia.Interactivity;
namespace ControlCatalog.Pages
{
public partial class CommandBarTogglePage : UserControl
{
public CommandBarTogglePage()
{
InitializeComponent();
}
private void OnFormatChanged(object? sender, RoutedEventArgs e)
{
if (FormatStatus == null)
return;
var active = new List<string>();
if (BoldToggle.IsChecked == true) active.Add("Bold");
if (ItalicToggle.IsChecked == true) active.Add("Italic");
if (UnderlineToggle.IsChecked == true) active.Add("Underline");
FormatStatus.Text = active.Count > 0 ? $"Active: {string.Join(", ", active)}" : "Active: (none)";
ForceBoldCheck.IsChecked = BoldToggle.IsChecked;
ForceItalicCheck.IsChecked = ItalicToggle.IsChecked;
ForceUnderlineCheck.IsChecked = UnderlineToggle.IsChecked;
}
private void OnForceBoldChanged(object? sender, RoutedEventArgs e)
{
if (BoldToggle == null)
return;
BoldToggle.IsChecked = ForceBoldCheck.IsChecked;
}
private void OnForceItalicChanged(object? sender, RoutedEventArgs e)
{
if (ItalicToggle == null)
return;
ItalicToggle.IsChecked = ForceItalicCheck.IsChecked;
}
private void OnForceUnderlineChanged(object? sender, RoutedEventArgs e)
{
if (UnderlineToggle == null)
return;
UnderlineToggle.IsChecked = ForceUnderlineCheck.IsChecked;
}
}
}