У меня есть список элементов в моем классе данных:
public ObservableCollection<Node> NodesFromDatabase
{
get
{
if (_nodesFromDatabase == null)
_nodesFromDatabase =GenerateMenuNodes();
return _nodesFromDatabase ;
}
set
{
_nodesFromDatabase = value;
}
}
И свойство в управлении, к которому я хочу привязать эти данные:
public ObservableCollection<Node> Nodes
{
get { return (ObservableCollection<Node>)GetValue(NodesProperty); }
set
{
SetValue(NodesProperty, value);
}
}
private static DependencyProperty NodesProperty =
DependencyProperty.Register(
"Nodes",
typeof(ObservableCollection<Node>),
typeof(Control),new PropertyMetadata(new ObservableCollection<Node>()));
В xaml у меня есть такой код:
<Grid Background="White">
<Grid.DataContext>
<local:DataFromDataBase x:Name="database" />
</Grid.DataContext>
<local:Control Nodes="{Binding NodesFromDatabase}" />
</Grid>
И у меня странная логика за этим кодом.
Моё свойство NodesFromDatabase запускается в операторе get, но управляющий оператор Set Nodes не запускается! Что я делаю не так с этим?