public ArrayDoubleTrendPanel(IArrayValueRead aArrayValue)
        {
            mArrayValue = aArrayValue;
            mValue      = mArrayValue.ValueArray;
            InitializeComponent();
            timer_Update.Start();

            chart.MouseWheel += chart_MouseWheel;
        }
        protected override void     Dispose(bool disposing)
        {
            if (disposing)
            {
                chart.MouseWheel -= chart_MouseWheel;

                mArrayValue = null;
                timer_Update.Stop();

                if (mCursorBrush != null)
                {
                    foreach (Brush lBrush in mCursorBrush)
                    {
                        lBrush.Dispose();
                    }
                    mCursorBrush.Clear();
                    mCursorBrush = null;
                }

                if (mCursorFont != null)
                {
                    mCursorFont.Dispose();
                    mCursorFont = null;
                }

                if (mCursorValue != null)
                {
                    mCursorValue.Clear();
                    mCursorValue = null;
                }

                if (mArrayIndex != null)
                {
                    mArrayIndex.Clear();
                    mArrayValue = null;
                }

                if (components != null)
                {
                    components.Dispose();
                }
            }
            base.Dispose(disposing);
        }