コード例 #1
0
        private void UpdateDimensionList(ReactiveList <LocalDimension> list)
        {
            list.ChangeTrackingEnabled = false;
            foreach (var dim in list)
            {
                dim.IsDuplicate = false;
                dim.RaisePropertyChanged(nameof(dim.Name));
            }

            var duplicatgroups = list
                                 .GroupBy(dim => dim.Name)
                                 .Where(g => g.Count() > 1)
                                 .ToList();


            foreach (var group in duplicatgroups)
            {
                foreach (var dim in group)
                {
                    dim.IsDuplicate = true;
                    dim.RaisePropertyChanged(nameof(dim.Name));
                }
            }

            list.ChangeTrackingEnabled = true;

            CanCreate = !AllErrors.Any() &&
                        ColumnList.Count(col => col.HasErrors) == 0 &&
                        RowList.Count(row => row.HasErrors) == 0;
        }