/// <summary>
        /// Releases this System.Windows.Forms.DataGrid.
        /// </summary>
        protected override void Dispose(bool disposing)
        {
            if (disposing)
            {
                if (this.sqlDataAdapter != null)
                {
                    this.sqlDataAdapter = null;
                }
                this.FK_Ord_LngCustomerID = System.Data.SqlTypes.SqlInt32.Null;
            }

            base.Dispose(disposing);
        }
        /// <summary>
        /// Load or reloads a subset of the table content. In order to successfully
        /// call this method, you need to call first the Initialize method.
        /// </summary>
        /// <param name="startRecord">The zero-based record number to start with.</param>
        /// <param name="maxRecords">The maximum number of records to retrieve.</param>
        public void RefreshData(int startRecord, int maxRecords)
        {
            if (this.LastKnownConnectionType == OlymarsDemo.DataClasses.ConnectionType.None)
            {
                throw new InvalidOperationException("You must call the 'Initialize' method before calling this method.");
            }


            switch (this.LastKnownConnectionType)
            {
            case OlymarsDemo.DataClasses.ConnectionType.ConnectionString:
                this.sqlDataAdapter = new OlymarsDemo.SqlDataAdapters.SqlDataAdapter_tblOrder(this.connectionString, this.FK_Ord_LngCustomerID, "tblOrder");
                break;

            case OlymarsDemo.DataClasses.ConnectionType.SqlConnection:
                this.sqlDataAdapter = new OlymarsDemo.SqlDataAdapters.SqlDataAdapter_tblOrder(this.sqlConnection, this.FK_Ord_LngCustomerID, "tblOrder");
                break;
            }

            this.dataSet = null;

            if (startRecord == -1 && maxRecords == -1)
            {
                this.sqlDataAdapter.FillDataSet(ref this.dataSet);
            }
            else
            {
                this.sqlDataAdapter.FillDataSet(ref this.dataSet, startRecord, maxRecords);
            }

            this.dataSet.Tables["tblOrder"].Columns["Ord_GuidID"].Caption        = "Ord_GuidID (update this label in the \"Olymars/ColumnLabel\" extended property of the \"Ord_GuidID\" column)";
            this.dataSet.Tables["tblOrder"].Columns["Ord_DatOrderedOn"].Caption  = "Ord_DatOrderedOn (update this label in the \"Olymars/ColumnLabel\" extended property of the \"Ord_DatOrderedOn\" column)";
            this.dataSet.Tables["tblOrder"].Columns["Ord_LngCustomerID"].Caption = "Ord_LngCustomerID (update this label in the \"Olymars/ColumnLabel\" extended property of the \"Ord_LngCustomerID\" column)";
            this.dataSet.Tables["tblOrder"].Columns["Ord_CurTotal"].Caption      = "Ord_CurTotal (update this label in the \"Olymars/ColumnLabel\" extended property of the \"Ord_CurTotal\" column)";

            this.bindingInProgress = true;
            this.DataSource        = this.dataSet.Tables["tblOrder"].DefaultView;
            this.bindingInProgress = false;
        }