public class R : Shape { protected override void OnPropertyChanged (DependencyPropertyChangedEventArgs e) { Console.WriteLine ("here"); } protected override Geometry DefiningGeometry { get { return new LineGeometry (); } } } public partial class Window1 : System.Windows.Window { public Window1 () { InitializeComponent (); R r = new R (); R r2 = new R (); RotateTransform rr = new RotateTransform (); r.RenderTransform = rr; r2.RenderTransform = rr; rr.Angle = 10; }