Winui 3 C# создать пользовательскую кнопкуC#

Место общения программистов C#
Ответить
Anonymous
 Winui 3 C# создать пользовательскую кнопку

Сообщение Anonymous »

Я пытаюсь создать пользовательскую кнопку для небольшого значка Но кнопка показывает только тогда, когда я обновляю его в коде xaml или с изменяемой окном. Вы знаете, как заставить его показать при начале страницы? Или это лучше?

Код: Выделить всё

< /code>
iconbutton class: < /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);
}
}
}
Класс Iconbutton будет использоваться для получения ввода для модификации CRUD.


Подробнее здесь: https://stackoverflow.com/questions/797 ... tom-button
Ответить

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

Вернуться в «C#»