Laden...

DependencyProperty + Binding an Zuweisung funktioniert nicht

Erstellt von Hans_Rakete vor 12 Jahren Letzter Beitrag vor 12 Jahren 795 Views
H
Hans_Rakete Themenstarter:in
178 Beiträge seit 2011
vor 12 Jahren
DependencyProperty + Binding an Zuweisung funktioniert nicht

Hallo,

ich habe eine DP:


public string Datenquelle
        {
            get { return (string)GetValue(DatenquelleProperty); }
            set { SetValue(DatenquelleProperty, value); }
        }
        public static readonly DependencyProperty DatenquelleProperty =
            DependencyProperty.Register("Datenquelle", typeof(string), typeof(schunter_control), new UIPropertyMetadata(string.Empty));

und übergebe im XAML Werte:


<local:schunter_control VerticalAlignment="Top" Datenquelle="ein Beispieltext"/>

das Funktioniert prima.
Warum aber funktioniert folgendes nicht (gleiche DP)?:


<local:schunter_control VerticalAlignment="Top" Datenquelle="{Binding Path=Text, ElementName=Quelle}">
<TextBox Name="Quelle" Text="Beispieltext"/>

Hat jemand eine Idee?

6.862 Beiträge seit 2003
vor 12 Jahren

Hallo,

dein DP ist nicht richtig definiert. Es müsste DatenquelleProperty statt datenquelleProperty heißen.

Ansonsten siehts gar nicht so schlecht aus. Wobei du nirgens ein Binding auf ein Binding hast. Das erste was ja tut, ist ne stinknormale Zuweisung und das zweite ist ein einfaches Binding.

Baka wa shinanakya naoranai.

Mein XING Profil.

H
Hans_Rakete Themenstarter:in
178 Beiträge seit 2011
vor 12 Jahren

Hallo talla,

danke der Hinweise. Hab das mal korrigiert, funktioniert damit aber auch noch nicht.

W
113 Beiträge seit 2006
vor 12 Jahren

Hallo Hans_Rakete,

könnte es eventuell am Binding Mode der UIPropertyMetadata Klasse liegen. Wenn diese nicht auf TwoWay gestellt ist holt sich dein Control den Wert nie ab.

mfg,
XaN

H
Hans_Rakete Themenstarter:in
178 Beiträge seit 2011
vor 12 Jahren

Also Mode=TwoWay zu ergänzen bringt keine Änderung.

W
113 Beiträge seit 2006
vor 12 Jahren

Hallo Hans_Rakete,

werden im output irgendwelche binding fehler angezeigt?
Eventuell hilft es weiter mal den PropertyChangedCallback in den Metadaten zu setzen und zu testen ob der Aufgerufen wird.

mfg,
XaN