public override LayerVM DeepClone()
        {
            SingleClassificationLayerVM result = new SingleClassificationLayerVM(PropertyName);

            result.Remark          = Remark;
            result.PossibleClasses = PossibleClasses.ToArray();
            result.CurrentClass    = CurrentClass;
            return(result);
        }
        public override LayerVM DeepClone()
        {
            MultiClassificationLayerVM result = new MultiClassificationLayerVM(PropertyName);

            result.PossibleClasses = PossibleClasses.ToArray();
            result.Remark          = Remark;
            if (CurrentClasses == null)
            {
                result.CurrentClasses = new List <LayerClassVM>();
            }
            else
            {
                result.CurrentClasses = new List <LayerClassVM>(CurrentClasses);
            }
            return(result);
        }