Winui 3 C# Erstellen Sie die benutzerdefinierte Schaltfläche

Post a reply

Smilies
:) :( :oops: :chelo: :roll: :wink: :muza: :sorry: :angel: :read: *x) :clever:
View more smilies

BBCode is ON
[img] is ON
[flash] is OFF
[url] is ON
Smilies are ON

Topic review
   

Expand view Topic review: Winui 3 C# Erstellen Sie die benutzerdefinierte Schaltfläche

by Anonymous » 12 Sep 2025, 07:18

Ich versuche, eine benutzerdefinierte Taste für ein kleines Symbol zu erstellen. Wissen Sie, wie Sie es bei der Einleitung der Seite zeigen können? Oder machen Sie es besser?

Code: Select all

< /code>
Die IconButton-Klasse: < /p>
    /// 
/// Custom Control for an icon in a small button
/// 
public sealed partial class IconButton : Button
{
/// 
/// icon code to add to the button
/// 
public string IconCode { get; set; } = string.Empty;
/// 
/// Type of the Style to apply on the Button
/// 
public CustomButtonType Type { get; set; }
/// 
///
/// 
public IconButton()
{
this.DefaultStyleKey = typeof(IconButton);
}
/// 
///
/// 
protected override void OnApplyTemplate()
{
try
{
base.OnApplyTemplate();
}catch
{
Console.WriteLine("error base.OnApplyTemplate");
}
try
{
switch (Type)
{
case CustomButtonType.AccentButtonStyle:
this.Style = FournierStyles.MainStyles["AccentButtonStyle"] as Style;
break;
case CustomButtonType.AddButtonStyle:
this.Style = FournierStyles.ButtonStyles["AddButtonStyle"] as Style;
break;
case CustomButtonType.PrincipalButtonStyle:
this.Style = FournierStyles.ButtonStyles["PrincipalButtonStyle"] as Style;
break;
case CustomButtonType.DangerButtonStyle:
this.Style = FournierStyles.ButtonStyles["DangerButtonStyle"] as Style;
break;
case CustomButtonType.SecondaryButtonStyle:
this.Style = FournierStyles.ButtonStyles["SecondaryButtonStyle"] as Style;
break;
case CustomButtonType.WarningButtonStyle:
this.Style = FournierStyles.ButtonStyles["WarningButtonStyle"] as Style;
break;
case CustomButtonType.InfoButtonStyle:
this.Style = FournierStyles.ButtonStyles["InfoButtonStyle"] as Style;
break;
case CustomButtonType.SucessButtonStyle:
this.Style = FournierStyles.ButtonStyles["SucessButtonStyle"] as Style;
break;
case CustomButtonType.DefaultButtonStyle:
default:
break;
}
}
catch (Exception ex)
{
throw new StyleTypeException("Impossible to set Style to button for " + ex);
}
try
{
FontIcon icon = new()
{
Glyph = IconCode,
Foreground = new SolidColorBrush(Colors.Black)
};
this.Content = icon;
this.UpdateLayout();
this.Width = 30;
this.Height = 30;
}
catch (Exception ex)
{
throw new IconButtonGenerationException("Impossible to creation icon to IconButton because " + ex);
}
}
}
Die IconButton -Klasse wird verwendet, um Eingaben für die CRUD -Modifikation zu erhalten.

Top