Beispiel #1
0
        public void CmdPrepareData()
        {
            try
            {
                LocalData.MaxLevel    = SourceList.Max(x => x.Level);
                LocalData.MinLevel    = SourceList.Min(x => x.Level);
                LocalData.LevelsCount = LocalData.MaxLevel - LocalData.MinLevel + 1;

                int k = 0;

                foreach (TreeItem item in SourceList.OrderBy(x => x.SequenceNumber))
                {
                    k++;
                    item.SequenceNumber = (double)k;

                    item.Level             = item.Level - LocalData.MinLevel + 1;
                    item.IsLastItemInLevel = LocalTreeFunctions.CmdCheckIfItemIsLastInThisLevel(SourceList, item.ID);
                    item.IsVisible         = true;
                    item.IsExpanded        = true;
                    item.HasChildren       = SourceList.Any(x => x.ParentID == item.ID);
                }
            }
            catch (Exception ex)
            {
                LocalTreeFunctions.PrintError(ex.Message, MethodBase.GetCurrentMethod());
            }
        }
Beispiel #2
0
        public void CmdDeleteSelected()
        {
            if (CurrentID > 0)
            {
                if (SourceList.Any(x => x.ID == CurrentID))
                {
                    if (!SourceList.Any(x => x.ParentID == CurrentID))
                    {
                        SourceList.Remove(SourceList.Single(x => x.ID == CurrentID));
                        CurrentID = 0;


                        int k = 0;
                        foreach (TreeItem item in SourceList.OrderBy(x => x.SequenceNumber))
                        {
                            k++;
                            item.SequenceNumber    = (double)k;
                            item.IsLastItemInLevel = LocalTreeFunctions.CmdCheckIfItemIsLastInThisLevel(SourceList, item.ID);
                            item.HasChildren       = SourceList.Any(x => x.ParentID == item.ID);
                        }
                    }
                    else
                    {
                        jsRuntime.InvokeVoidAsync("alert", "Parent node can't be deleted!");
                    }
                }
            }

            StateHasChanged();
        }
Beispiel #3
0
        public void CmdLoadData()
        {
            try
            {
                SourceList = SourceList.OrderBy(x => x.SequenceNumber).ToList();

                CmdPrepareData();
            }
            catch (Exception ex)
            {
                LocalTreeFunctions.PrintError(ex.Message, MethodBase.GetCurrentMethod());
            }
        }