public void CopyTo(MillingList Dst)
 {
     if (Dst != null)
     {
         Dst.Enable       = this.Enable;
         Dst.MilRect      = this.MilRect;
         Dst.Pitch        = this.Pitch;
         Dst.Cycle        = this.Cycle;
         Dst.StartPos     = this.StartPos;
         Dst.Force        = this.Force;
         Dst.Tilt         = this.Tilt;
         Dst.RPM          = this.RPM;
         Dst.Speed        = this.Speed;
         Dst.PathCount    = this.PathCount;
         Dst.ToolChange   = this.ToolChange;
         Dst.UtilFill     = this.UtilFill;
         Dst.UtilDrain    = this.UtilDrain;
         Dst.UtilType     = this.UtilType;
         Dst.MillingImage = this.MillingImage;
         Dst.EPD          = this.EPD;
         Dst.ToolType     = this.ToolType;
     }
 }
        public bool Compare(MillingList param, List <string> changelist = null)
        {
            bool bRtn = false;

            bRtn |= this.Enable != param.Enable; if (this.Enable != param.Enable)
            {
                changelist?.Add($"     Enable : {          param.Enable      } -> {Enable      }");
            }
            bRtn |= this.MilRect != param.MilRect; if (this.MilRect != param.MilRect)
            {
                changelist?.Add($"     MilRect(X,Y,W,H) : {param.MilRect     } -> {MilRect     }");
            }
            bRtn |= this.Pitch != param.Pitch; if (this.Pitch != param.Pitch)
            {
                changelist?.Add($"     Pitch : {           param.Pitch       } -> {Pitch       }");
            }
            bRtn |= this.Cycle != param.Cycle; if (this.Cycle != param.Cycle)
            {
                changelist?.Add($"     Cycle : {           param.Cycle       } -> {Cycle       }");
            }
            bRtn |= this.StartPos != param.StartPos; if (this.StartPos != param.StartPos)
            {
                changelist?.Add($"     StartPos : {        param.StartPos    } -> {StartPos    }");
            }
            bRtn |= this.Force != param.Force; if (this.Force != param.Force)
            {
                changelist?.Add($"     Force : {           param.Force       } -> {Force       }");
            }
            bRtn |= this.Tilt != param.Tilt; if (this.Tilt != param.Tilt)
            {
                changelist?.Add($"     Tilt : {            param.Tilt        } -> {Tilt        }");
            }
            bRtn |= this.RPM != param.RPM; if (this.RPM != param.RPM)
            {
                changelist?.Add($"     RPM : {             param.RPM         } -> {RPM         }");
            }
            bRtn |= this.Speed != param.Speed; if (this.Speed != param.Speed)
            {
                changelist?.Add($"     Speed : {           param.Speed       } -> {Speed       }");
            }
            bRtn |= this.PathCount != param.PathCount; if (this.PathCount != param.PathCount)
            {
                changelist?.Add($"     PathCount : {       param.PathCount   } -> {PathCount   }");
            }
            bRtn |= this.ToolChange != param.ToolChange; if (this.ToolChange != param.ToolChange)
            {
                changelist?.Add($"     ToolChange : {      param.ToolChange  } -> {ToolChange  }");
            }
            bRtn |= this.UtilFill != param.UtilFill; if (this.UtilFill != param.UtilFill)
            {
                changelist?.Add($"     UtilFill : {        param.UtilFill    } -> {UtilFill    }");
            }
            bRtn |= this.UtilDrain != param.UtilDrain; if (this.UtilDrain != param.UtilDrain)
            {
                changelist?.Add($"     UtilDrain : {       param.UtilDrain   } -> {UtilDrain   }");
            }
            bRtn |= this.UtilType != param.UtilType; if (this.UtilType != param.UtilType)
            {
                changelist?.Add($"     UtilType : {        param.UtilType    } -> {UtilType    }");
            }
            bRtn |= this.MillingImage != param.MillingImage; if (this.MillingImage != param.MillingImage)
            {
                changelist?.Add($"     MillingImage : {    param.MillingImage} -> {MillingImage}");
            }
            bRtn |= this.EPD != param.EPD; if (this.EPD != param.EPD)
            {
                changelist?.Add($"     EPD : {             param.EPD         } -> {EPD         }");
            }
            bRtn |= this.ToolType != param.ToolType; if (this.ToolType != param.ToolType)
            {
                changelist?.Add($"     ToolType : {        param.ToolType    } -> {ToolType    }");
            }

            return(bRtn);
        }