C # / WPF: свойство зависимости не обновляет связанное свойство? - PullRequest
4 голосов
/ 14 декабря 2009

Я пытаюсь привязать свойство зависимости из моего UserControl к моей MainViewModel.

Вот как выглядит свойство DependencyProperty:

    public static DependencyProperty ItemHasChangesProperty = DependencyProperty.Register("ItemHasChanges",
                                                                                  typeof(bool),
                                                                                  typeof(MyUserControl),
                                                                                  new PropertyMetadata(null));
    public bool ItemHasChanges
    {
        get { return (bool)GetValue(ItemHasChangesProperty); }
        set { SetValue(ItemHasChangesProperty, value); }
    }

Мой XAML:

  <local:MyUserControl ItemHasChanges="{Binding Path=Changes}" Grid.Row="4"   />

Теперь при отладке и проверке Set-Accessor для bool Changes я вижу, что к нему никогда не обращаются, когда я устанавливаю в UserControl ItemHasChanges = true;

Есть идеи, что я здесь не так делаю?

Спасибо!

Приветствия

Ответы [ 2 ]

9 голосов
/ 14 декабря 2009

Понял .. Я должен был изменить

<local:MyUserControl ItemHasChanges="{Binding Path=Changes}" Grid.Row="4"   />

до

<local:MyUserControl ItemHasChanges="{Binding Path=Changes, Mode=OneWayToSource}" Grid.Row="4"   />

У меня ушло около 3 часов, чтобы понять это ... хаха: -)

Приветствия

0 голосов
/ 14 декабря 2009

Вы устанавливаете ItemHasChanges на элементе управления напрямую (например, не обновляя источник привязки)? Если это так, это приведет к удалению привязки.

...