private static void On_TargetGeometry_Changed(DependencyObject d, DependencyPropertyChangedEventArgs e) { GeometryListBoxItem gc = d as GeometryListBoxItem; if (gc != null) { gc.OnTargetGeometryChanged(e.NewValue as ICadGeometry); } }
//============================================================================= protected override void OnPreviewMouseDown(MouseButtonEventArgs e) { base.OnPreviewMouseDown(e); GeometryListBoxItem item = Utils.TryFindParent <GeometryListBoxItem>((DependencyObject)e.OriginalSource); if (item != null) { item.OnClick(); } // mark event handled, item is selected already e.Handled = true; }