protected override DependencyObject GetContainerForItemOverride() { var c = new GraphListItem(); c.PositionChanged += Container_PositionChanged; return(c); }
static void OnPropertyChanged(DependencyObject sender, DependencyPropertyChangedEventArgs args) { GraphListItem item = sender as GraphListItem; switch (args.Property.Name) { case "X": item.tm.X = (double)args.NewValue; item.OnPositionChanged(); break; case "Y": item.tm.Y = (double)args.NewValue; item.OnPositionChanged(); break; default: break; } }