//----------------------------------------------------------------------------------------------------
        private void Open_Sub()
        {
            if (this.IsNew)
            {
                this.Model = new ForeignKey();
                this.Model.ConnectionId   = this.ViewModel.ConnectionId;
                this.Model.ConstraintName = "";
                if (this.RelationshipSide == RelationshipSides.Inbound)
                {
                    this.Model.RelationshipSide = ForeignKey.E_RelationshipSides.ForeignKeySide;
                }
                else
                {
                    this.Model.RelationshipSide = ForeignKey.E_RelationshipSides.PrimaryKeySide;
                }

                this.Model.Columns = new ForeignKeyColumn[0];
                for (int i = 0; i < 3; i++)
                {
                    this.Model.Columns[i] = new ForeignKeyColumn();
                }
            }

            this.ColumnsSelectors = new ForeignKeysEdit_ColumnsSelector[0];
            this.ViewModel.TableStructure_TempOtherTable = null;
            jF2(".Table_ColumnsSelectors").html("");
            for (int i = 0; i < this.Model.Columns.Length; i++)
            {
                this.Insert_ColumnsSelector(this.Model.Columns[i]);
            }
            if (!this.IsNew)
            {
                this.Insert_ColumnsSelector(new ForeignKeyColumn());
            }

            string thisTable = "";

            if (this.ViewModel != null && this.ViewModel.TableStructure != null)
            {
                thisTable = this.ViewModel.TableStructure.Schema + "." + this.ViewModel.TableStructure.TableName;
            }
            switch (this.RelationshipSide)
            {
            case RelationshipSides.Inbound:
                this.Populate_TablesSelect(jF(".Select_Table_ForeignKey"));
                jF(".Select_Table_ForeignKey").show();
                if (!this.IsNew)
                {
                    jF(".Select_Table_ForeignKey").val(this.ViewModel.GetTableId(this.Model.ForeignKey_Schema, this.Model.ForeignKey_TableName).As <string>());
                    this.Select_Table_ForeignKey_Change();
                }

                jF(".Div_Table_PrimaryKey").show().html(thisTable);
                break;

            case RelationshipSides.Outbound:
                jF(".Div_Table_ForeignKey").show().html(thisTable);

                this.Populate_TablesSelect(jF(".Select_Table_PrimaryKey"));
                jF(".Select_Table_PrimaryKey").show();
                if (!this.IsNew)
                {
                    jF(".Select_Table_PrimaryKey").val(this.ViewModel.GetTableId(this.Model.PrimaryKey_Schema, this.Model.PrimaryKey_TableName).As <string>());
                    this.Select_Table_PrimaryKey_Change();
                }
                break;
            }

            switch (this.Model.DeleteRule)
            {
            case ForeignKey.E_CascadeOptions.NoAction: jF(".DeleteRuleRadio1").attr("checked", true);
                break;

            case ForeignKey.E_CascadeOptions.Cascade: jF(".DeleteRuleRadio2").attr("checked", true);
                break;

            case ForeignKey.E_CascadeOptions.SetDefault: jF(".DeleteRuleRadio3").attr("checked", true);
                break;

            case ForeignKey.E_CascadeOptions.SetNull: jF(".DeleteRuleRadio4").attr("checked", true);
                break;
            }
            switch (this.Model.UpdateRule)
            {
            case ForeignKey.E_CascadeOptions.NoAction: jF(".UpdateRuleRadio1").attr("checked", true);
                break;

            case ForeignKey.E_CascadeOptions.Cascade: jF(".UpdateRuleRadio2").attr("checked", true);
                break;

            case ForeignKey.E_CascadeOptions.SetDefault: jF(".UpdateRuleRadio3").attr("checked", true);
                break;

            case ForeignKey.E_CascadeOptions.SetNull: jF(".UpdateRuleRadio4").attr("checked", true);
                break;
            }
        }
 //------------------------------------------------------------------------------------- Constructor --
 /// <summary>Instantiate:No</summary>
 public ForeignKeysEdit(bool isNew, RelationshipSides relationshipSide, TableDesign_ViewModel viewModel)
 {
     this.IsNew            = isNew;
     this.RelationshipSide = relationshipSide;
     this.ViewModel        = viewModel;
 }