Как я могу проверить, отменен ли мой обработчик событий RaisePropertyChanged () в SL? - PullRequest
0 голосов
/ 17 декабря 2010

С моим коллегой у нас возникла проблема с SilverLight в отношении NotificationObject of Prism.

Наша проблема такова;

  • Мы привязываем обработчик событий к одному из наших DependencyProperties
  • Затем мы вызываем RaiseChangedEvent в установщике
  • Когда мы отлаживаем, мы видим, что обработчик событий назначен, и онвызывается при изменении значения свойства.
  • Но когда мы изменяем значение свойства, когда-то agian from, в пользовательском интерфейсе, на этот раз мы видим, что наш обработчик событий не вызывается.

Итак, мы хотим быть уверены:

  • Если обработчик события все еще связан (если он не равен нулю, мы считаем, что он связан)
  • Если он связан, почему событие отменено или почему наш анонимный обработчик событияметод не вызывается снова (точка останова не достигнута)

    Ниже приведены фрагменты кода.

    Мой вопрос:

    Есть ли способ узнать, почемуRaisePropertyChanged ( "MyProperty");не вызывает назначение обработчика событий этому DependencyProperty с именем Requestor?Любые предложения?

    Если я обобщу: Можно ли войти в RaisePropertyChanged ("Запросчик");вызовите так, что он делает и куда выходит ?

Смотрите мои фрагменты кода:

// My dependency property in my ViewModel
public CompanyEntity MyProperty
{
    get { return _MyProperty; }
    set
    {
        _MyProperty = value;
        RaisePropertyChanged("MyProperty");
    }
}


// And my Dependency Property Event handler setting in my user control:
public static readonly DependencyProperty FactoryProperty =
DependencyProperty.Register("Factory", typeof (FactoryEntity), typeof (FactoryPicker),
    new PropertyMetadata((x, y) =>
            {
                // Some settings and processes
            }));

Ответы [ 2 ]

0 голосов
/ 17 декабря 2010

Проверьте, не пропустили ли вы объявление Mode = TwoWay при связывании.

0 голосов
/ 17 декабря 2010

Просто предположение: не нужно ли принуждать, как объяснено в http://forums.silverlight.net/forums/p/57516/146193.aspx?

...