private static void OnSelectedIndexChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { RadLoopingList list = d as RadLoopingList; if (list.IsInternalPropertyChange || !list.IsTemplateApplied) { return; } if (list.selectionChangeReason == LoopingListSelectionChangeReason.User) { list.UpdateSelection((int)e.NewValue, LoopingListSelectionChangeReason.User); } }
private static void OnSelectedIndexChanged(DependencyObject d, DependencyPropertyChangedEventArgs e) { RadLoopingList list = d as RadLoopingList; if (list.IsInternalPropertyChange) { return; } var selectedIndex = (int)e.NewValue; var selectedVisualIndex = list.GetVisualIndex(selectedIndex); if (!list.IsTemplateApplied) { list.selectedIndex = selectedIndex; list.selectedVisualIndex = selectedVisualIndex; } else if (list.selectionChangeReason == LoopingListSelectionChangeReason.User) { list.UpdateSelection(selectedIndex, selectedVisualIndex, LoopingListSelectionChangeReason.User); } }