У меня есть пользовательский контроль, который может содержать много разных видов элементов управления (например, кнопка, текстовое поле, поле со списком или флажок).Мне нужен общий способ отслеживать, если что-то было изменено.В большинстве случаев мне наплевать на детали (т.е. мне не нужно знать, какое текстовое поле изменилось).Когда я увидел EventManager.RegisterClassEvent
, я подумал, что это будет моим решением, но вскоре я понимаю, что это не так.Эта проблема в том, что он слишком много уволен.Например, если у меня есть кнопка и выпадающий список в одном элементе управления, событие button.click также запускается при попадании в выпадающий список выпадающего списка.
В WinForms мне приходилось просматривать все элементы управления в пользовательском контролеи подписаться на соответствующее событие (например, TextBox.TextChanged или ComboBox.SelectedIndexChanged), это утомительно, но работает.Я надеюсь, что есть лучший и более простой способ сделать это в WPF.