datatrigger de liaison à viewmodel de la propriété

Je suis en train de créer un style simple des données de déclenchement qui la tire de force obligatoire à partir d'un viewmodel de la propriété, comme vous pouvez le voir ci-dessous:

        <StackPanel Name="stackTextPanel" Orientation="Horizontal" Margin="0,8,0,0">
            <StackPanel.Style>
                <Style TargetType="{x:Type StackPanel}">
                    <Style.Triggers>
                        <DataTrigger Binding="{Binding QuickDrawBarPinned}" Value="False">
                            <Setter Property="Margin" Value="0,8,0,0" />
                        </DataTrigger>
                        <DataTrigger Binding="{Binding QuickDrawBarPinned}" Value="True">
                            <Setter Property="Margin" Value="0,48,0,0" />
                        </DataTrigger>
                    </Style.Triggers>
                </Style>
            </StackPanel.Style>

J'ai aussi essayé la variante

Binding="{Binding Path=QuickDrawBarPinned}"

mais cela ne fonctionne toujours pas quand j'appuie sur le bouton qui modifie l' QuickDrawBarPinned bien ce que je fais mal?

J'ai mis en place la propriété de la manière suivante:

    private bool _quickDrawBarPinned = false;
    ///<summary>
    ///Indicates if the Quick Draw Bar is pinned (stuck) or unpinned (retractable)
    ///</summary>
    public bool QuickDrawBarPinned
    {
        get { return _quickDrawBarPinned; }
        set
        {
            _quickDrawBarPinned = value;
            OnPropertyChanged("QuickDrawBarPinned");
        }
    }

C'est la méthode qui met en œuvre le changement de contrôle de la

    public virtual void OnPropertyChanged(string propertyInfo)
    {
        App.Current.Dispatcher.BeginInvoke((Action)(() =>
        {
            if (PropertyChanged != null)
            {
                PropertyChanged(this, new PropertyChangedEventArgs(propertyInfo));
            }
        }
        ));
    }

OriginalL'auteur MikeDub | 2013-06-28