Les propriétés doivent être déclarées en C# à l'aide de DependencyProperty.Register (ou, si vous ne créez pas de tyoe de bouton personnalisé, DependencyProperty.RegisterAttached). Voici la déclaration si vous créez une classe de bouton personnalisé:
public static readonly DependencyProperty ButtonBorderColourProperty =
DependencyProperty.Register("ButtonBorderColour",
typeof(Color), typeof(MyButton)); // optionally metadata for defaults etc.
public Color ButtonBorderColor
{
get { return (Color)GetValue(ButtonBorderColourProperty); }
set { SetValue(ButtonBorderColourProperty, value); }
}
Si vous n'êtes pas en train de créer une classe personnalisée, mais que vous souhaitez définir les propriétés qui peuvent être définies sur un bouton normal, utilisez RegisterAttached:
public static class ButtonCustomisation
{
public static readonly DependencyProperty ButtonBorderColourProperty =
DependencyProperty.RegisterAttached("ButtonBorderColour",
typeof(Color), typeof(ButtonCustomisation)); // optionally metadata for defaults etc.
}
Ils peuvent ensuite être définis en XAML:
<local:MyButton ButtonBorderColour="HotPink" />
<Button local:ButtonCustomisation.ButtonBorderColour="Lime" />