Sammlung Abhängigkeit Eigenschaften

Habe ich ein benutzerdefiniertes Steuerelement, das eine DependencyProperty Typ ObservableCollection gebunden ist, um eine observableCollection:

<MyControl MyCollectionProperty = {Binding MyObservableCollection} ...

Problem ist das hinzufügen zu MyObservableCollection nicht aktualisiert MyCollectionProperty.

Muss ich komplett ersetzen, die MyObservableCollection zu machen, arbeiten z.B.

MyObservableCollection = null;
MyObservableCollection = new ObservableCollection(){...}

Gibt es eine bessere Möglichkeit, damit umzugehen?

EDIT:

    public ObservableCollection<string> Columns
    {
        get { return (ObservableCollection<string>)GetValue(ColumnsProperty); }
        set { SetValue(ColumnsProperty, value); }
    }

    public static readonly DependencyProperty ColumnsProperty =
        DependencyProperty.Register("Columns", typeof(ObservableCollection<string>), typeof(MyControl),
                                    new PropertyMetadata(new ObservableCollection<string>(), OnChanged));
  • Würden Sie post von der definition der Abhängigkeit-Eigenschaft? Könnte etwas aus dort...
  • Ist Ihre "MyControl" monitoring PropertyChanged-oder CollectionChanged und sind Sie die überwachung PropertyChanged auf die Objekte in Ihrem beobachtbaren Sammlung?
  • ja, es ist ein Rückruf in der Definition und den handler für die CollectionChanged nie gefeuert wird. Ich sehe nicht, wo das hören für PropertyChanged auf die Elemente ist relevant, da wir reden über das hinzufügen.
  • Kannst du die Methode onChanged-Ereignisse? Btw es ist nicht eine gute Idee, um eine Voreinstellung für Ihre dp. Jede Instanz des Steuerelements wird auf die gleiche collection-Instanz standardmäßig.
  • Ah.. guter Punkt, um den default-Wert. Ich könnte den handler aber es ist irgendwie irrelevant, weil Sie nie aufgerufen wird.
  • Ähnliches problem gefragt und hier beantwortet stackoverflow.com/questions/4362278/...

InformationsquelleAutor user1604008 | 2013-02-22
Schreibe einen Kommentar