Esempio n. 1
0
 /// <summary>
 /// For Autoscrolling
 /// </summary>
 /// <param name="bvm"></param>
 /// <returns></returns>
 public BinInEditRackView GetBinView(BinViewModel bvm)
 {
     foreach (Xamarin.Forms.View view in grid.Children)
     {
         if (view is BinInEditRackView)
         {
             BinInEditRackView binview = (BinInEditRackView)view;
             if (binview.Model == bvm)
             {
                 return(binview);
             }
         }
     }
     return(null);
 }
Esempio n. 2
0
        private void FillBins()
        {
            for (int i = 1; i <= model.Levels; i++)
            {
                for (int j = 1; j <= model.Sections; j++)
                {
                    BinViewModel finded = model.BinsViewModel.BinViewModels.Find(x => x.Level == i && x.Section == j);
                    if (finded is BinViewModel)
                    {
                        try
                        {
                            BinInEditRackView exist = BinInEditRackViews.Find(x => x.Section == j && x.Level == i);
                            if (exist is BinInEditRackView)
                            {
                                exist.Update(finded);
                                exist.Marked = true;
                            }
                            else
                            {
                                BinInEditRackView bierv = new BinInEditRackView(finded);
                                bierv.Section = j;
                                bierv.Level   = i;
                                bierv.Marked  = true;
                                grid.Children.Add(bierv, finded.Section, finded.Section + finded.SectionSpan, finded.Level, finded.Level + finded.LevelSpan);
                                BinInEditRackViews.Add(bierv);
                            }
                        }
                        catch (Exception exp)
                        {
                            System.Diagnostics.Debug.WriteLine(exp.Message);
                        }
                    }
                    else
                    {
                        try
                        {
                            EmptySpaceViewModel esvm = model.BinsViewModel.EmptySpacesViewModels.Find(x => x.Level == i && x.Section == j);
                            if (esvm is EmptySpaceViewModel)
                            {
                                EmptySpaceViewInRack exist = EmptySpaceViewInRacks.Find(x => x.Section == j && x.Level == i);
                                if (exist is EmptySpaceViewInRack)
                                {
                                    exist.Marked = true;
                                }
                                else
                                {
                                    EmptySpaceViewInRack esvir = new EmptySpaceViewInRack(esvm);
                                    esvir.Section = j;
                                    esvir.Level   = i;
                                    esvir.Marked  = true;
                                    grid.Children.Add(esvir, esvm.Section, esvm.Level);
                                    EmptySpaceViewInRacks.Add(esvir);
                                }
                            }
                        }
                        catch (Exception exp)
                        {
                            System.Diagnostics.Debug.WriteLine(exp.Message);
                        }
                    }
                }
            }
            BinInEditRackViews.RemoveAll(x => x.Marked == false);
            foreach (BinInEditRackView bierv in BinInEditRackViews)
            {
                bierv.Marked = false;
            }

            EmptySpaceViewInRacks.RemoveAll(x => x.Marked == false);
            foreach (EmptySpaceViewInRack esvmir in EmptySpaceViewInRacks)
            {
                esvmir.Marked = false;
            }
        }