3 Stimmen

Bindung der Sichtbarkeit an eine statische Eigenschaft

Ich habe ein Steuerelement, das eine Beschriftung auf es hat, die ich ausblenden oder anzeigen möchte, basierend auf einem globalen Menüpunkt für alle Instanzen meines Steuerelements. Wenn ich auf die Schaltfläche zum Ausblenden von Beschriftungen klicke, möchte ich Folgendes ausblenden alle von ihnen.

Mein Xaml sieht wie folgt aus:

<TextBlock Name="_label" Visibility="{Binding LabelShown}" VerticalAlignment="Center" HorizontalAlignment="Center"/>

Ich habe in meinem Code dahinter eine Eigenschaft:

    private static Visibility _labelShown;
    public static Visibility LabelShown
    {
        get { return _labelShown; }
        set { _labelShown = value; }
    }

Und ich habe DataContext = this;

Wenn ich die statische Eigenschaft ändere, passiert nichts. Ich nehme an, dies ist, weil keine Steuerelemente eine Eigenschaft geändert Benachrichtigung erhalten. Ich kann nicht INotifyPropertyChanged darauf implementieren, weil ich nicht die nicht statische Eigenschaft geändert Handler von meiner statischen Eigenschaft verweisen kann.

Ich denke, dass dies vielleicht nicht der beste Weg ist, um dies zu tun, aber ich würde wirklich gerne eine Schaltfläche (viele Ebenen über meiner eigentlichen Steuerung) haben, um die Sichtbarkeit für alle Instanzen zu steuern.

CodeJaeger.com

CodeJaeger ist eine Gemeinschaft für Programmierer, die täglich Hilfe erhalten..
Wir haben viele Inhalte, und Sie können auch Ihre eigenen Fragen stellen oder die Fragen anderer Leute lösen.

Powered by:

X