Nie można powiązać danych DependencyProperty
Mam UserControl z DependencyProperty. Ustawiam jego wartość w oknie hosta za pomocą wyrażenia powiązania danych. Jednak to nie działa zgodnie z oczekiwaniami.
Urywek z kodu kontrolnego użytkownika:
public class ViewBase : UserControl
{
public static readonly DependencyProperty ViewModelProperty
= DependencyProperty.Register(
"ViewModel", typeof(ViewModelBase), typeof(ViewBase));
public ViewModelBase ViewModel
{
get { return GetValue(ViewModelProperty) as ViewModelBase; }
set
{
SetValue(ViewModelProperty, value);
}
}
}
I z XAML (uwaga: CasingListView dziedziczy z ViewBase):
<CasingEditor:CasingListView x:Name="_casingListView"
ViewModel="{Binding CasingListViewModel}" />
To, co się dzieje, jest niczym. W szczególności seter nigdy nie jest wywoływany, a właściwość pozostaje pusta. Znam własność źródłaCasingListViewModel
ma wartość, ponieważ próbowałem powiązać ją z inną właściwością (DataContext) i działała poprawnie.
Myślałem, że właściwość zależności może być powiązana z danymi. Czy się mylę?