void PasteRowsWithAnimation(ref int positionNewRow, GridViewBase view, BindingList <CopyPasteOutlookData> list, object[] objectsForCopy, int start, int end) { bool insertToEndOfRows = view.FocusedRowHandle == GridControl.InvalidRowHandle; for (int i = start; i < end; i++) { CopyPasteOutlookData obj = ((CopyPasteOutlookData)objectsForCopy[i]); obj.UniqueID = ++Counter; if (i == maxAnimationRows - 1) { pasteWithoutAnimation = new PasteHelper() { List = list, ObjectsForCopy = objectsForCopy, Owner = this, PositionNewRow = positionNewRow, View = view }; } if (PastUnderFocusedRow && (list.Count != 0) && !insertToEndOfRows) { list.Insert(positionNewRow, obj); positionsNewRowsList.Add(positionNewRow); positionNewRow++; } else { list.Add(obj); positionsNewRowsList.Add(list.Count - 1); } } }
public CopyPasteOperations() { Counter = 0; InitializeComponent(); DemoContentGrid.DataContext = this; ArrayList list = OutlookDataGenerator.CreateOutlookArrayList(10); object[] objectForCopying = list.ToArray(); for (int i = 0; i < objectForCopying.Length; i++) { firstList.Add(CopyPasteOutlookData.ConvertOutlookDataToCopyPasteOutlookData((OutlookData)objectForCopying[i], this)); } firstGrid.ItemsSource = firstList; secondGrid.ItemsSource = secondList; allowCopyingtoClipboardCheckEdit.IsChecked = true; copyHeaderCheckEdit.IsChecked = true; firstGrid.PreviewMouseDown += new MouseButtonEventHandler(firstGrid_PreviewMouseDown); secondGrid.PreviewMouseDown += new MouseButtonEventHandler(secondGrid_PreviewMouseDown); GridDictionary.Add(FocusedGrid.First, firstGrid); GridDictionary.Add(FocusedGrid.Second, secondGrid); }