Mise à jour de la propriété attachée personnalisée dans le déclencheur de style avec Setter
J'ai essayé des propriétés attachées et le style déclenche en espérant en apprendre plus à ce sujet.
J'ai écrit un WPF application windows avec une propriété attachée:
public static readonly DependencyProperty SomethingProperty =
DependencyProperty.RegisterAttached(
"Something",
typeof(int),
typeof(Window1),
new UIPropertyMetadata(0));
public int GetSomethingProperty(DependencyObject d)
{
return (int)d.GetValue(SomethingProperty);
}
public void SetSomethingProperty(DependencyObject d, int value)
{
d.SetValue(SomethingProperty, value);
}
Et j'ai essayé de mettre à jour le "quelque Chose" de la propriété attachée avec un déclenchement de propriété définie dans le bouton de la section style:
<Window x:Class="TestStyleTrigger.Window1"
xmlns="http://schemas.microsoft.com/winfx/2006/xaml/presentation"
xmlns:x="http://schemas.microsoft.com/winfx/2006/xaml"
xmlns:local="clr-namespace:TestStyleTrigger;assembly=TestStyleTrigger"
Title="Window1" Height="210" Width="190">
<Window.Resources>
<Style x:Key="buttonStyle" TargetType="{x:Type Button}">
<Style.Triggers>
<Trigger Property="IsPressed" Value="True">
<Setter Property="local:Window1.Something" Value="1" />
</Trigger>
</Style.Triggers>
</Style>
</Window.Resources>
<Button Style="{StaticResource buttonStyle}"></Button>
</Window>
Cependant, j'ai continué à obtenir de l'erreur de compilation suivante:
erreur MC4003: Impossible de résoudre la Propriété de Style "quelque Chose". Vérifiez que le propriétaire type est le Style de TargetType, ou de l'utilisation de la Classe.Syntaxe de la propriété pour spécifier la Propriété. La Ligne 10, La Position 29.
Je ne comprends pas pourquoi il me donne cette erreur parce que je n'ai utiliser la Classe.Propriété " la syntaxe de la balise de la section. Quelqu'un peut-il me dire comment puis-je corriger cette erreur de compilation?
source d'informationauteur oscarkuo
Vous devez vous connecter pour publier un commentaire.
Votre sauvegarde de méthodes pour la propriété de dépendance sont nommés de manière incorrecte et doit être statique:
Aussi, vous ne devez pas spécifier l'assemblée dans les locaux de XML NS de cartographie dans le XAML, parce que l'espace de noms est dans l'actuelle assemblée. Faire ceci à la place: