Пример #1
0
        public static ListView createListView(IList sourceView, ViewBase view, int itemsApproximation, ref int itemIndex, Rect size, out BindingList <object> list)
        {
            ListView listview = new ListView();

            // Setting view
            if (view != null)
            {
                listview.View = UIUtility.CreateDeepCopy <ViewBase>(view);
                listview.UpdateLayout();
            }

            // Create Itemssource
            list = new BindingList <object>();
            BindingListCollectionView collectionViewSource = new BindingListCollectionView(list);

            listview.ItemsSource = collectionViewSource;
            //listview.GroupStyle.Add(printableListView.PrintGroupStyle);

            StackPanel body = new StackPanel();

            body.Children.Add(listview);

            // Add the estimated items to the listview
            int currentPosition = itemIndex;

            for (int i = 0; i < itemsApproximation && i + currentPosition < sourceView.Count; i++)
            {
                object item = sourceView[itemIndex];
                list.Add(item);
                itemIndex++;
            }
            collectionViewSource.Refresh();

            // Calculate the size of listview
            listview.Measure(new Size());
            body.Arrange(new Rect());

            // Recorrect the items inside listview
            while (listview.ActualHeight < size.Height && itemIndex < sourceView.Count)
            {
                object item = sourceView[itemIndex];
                list.Add(item);
                itemIndex++;
                collectionViewSource.Refresh();
                listview.Measure(new Size());
                body.Arrange(size);
            }

            while (listview.ActualHeight > size.Height && itemIndex >= 0)
            {
                list.Remove(list[list.Count - 1]);
                itemIndex--;
                collectionViewSource.Refresh();
                listview.Measure(new Size());
                body.Arrange(size);
            }
            body.Children.Clear();

            return(listview);
        }
Пример #2
0
 public void Delete()
 {
     if (MessageBox.Show("Do you want to Delete this service?", "Confirm",
                         MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
     {
         _fieldedService.ServiceID = -_fieldedService.ServiceID;
         if (DataAccess.UpdateService(_fieldedService))
         {
             _sortedServices.Remove(_fieldedService);
             _sortedServices.Refresh();
             NotifyOfPropertyChange(() => CanDelete);
         }
     }
 }
Пример #3
0
 public void Delete(bool FieldedCar_HasService)
 {
     if (MessageBox.Show("Do you want to Delete this car?", "Confirm",
                         MessageBoxButton.YesNo, MessageBoxImage.Question) == MessageBoxResult.Yes)
     {
         _fieldedCar.CarID = -_fieldedCar.CarID;
         try
         {
             DataAccess.UpdateCar(_fieldedCar);
         }
         catch (Exception e)
         {
             MessageBox.Show(
                 $"Database Error: {e.Message}");
             return;
         }
         if (_fieldedCar.CarID == 0)
         {
             _sortedCars.Remove(_fieldedCar);
             _sortedCars.Refresh();
         }
     }
 }