public static void BindEOGrid(
            ref EO.Web.Grid EOGrid
            , DataTable Dt
            , List<ClsBindGridColumn_EO> Gc
            , string Key = ""
            , bool AllowSort = true
            , bool HasDelete = false)
        {
            EOGrid.DataSource = Dt;

            if (EOGrid.Columns.Count > 0)
            { EOGrid.Columns.Clear(); }

            EOGrid.AutoGenerateColumns = false;
            EOGrid.AllowPaging = false;

            EO.Web.GridColumn EOGc = null;

            foreach (ClsBindGridColumn_EO C in Gc)
            {
                switch (C.mFieldType)
                {
                    case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Static:
                        EOGc = new EO.Web.StaticColumn();
                        break;
                    case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Text:
                        EOGc = new EO.Web.TextBoxColumn();
                        break;
                    case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Checkbox:
                        EOGc = new EO.Web.CheckBoxColumn();
                        break;
                    case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_DateTime:
                        EOGc = new EO.Web.DateTimeColumn();
                        break;
                    case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Button:
                        {
                            EO.Web.ButtonColumn Obj = new EO.Web.ButtonColumn();
                            Obj.CommandName = C.mCommandName;
                            Obj.ButtonType = C.mButtonType;
                            Obj.ButtonText = C.mFieldText;
                            EOGc = Obj;
                            break;
                        }
                    case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Delete:
                        {
                            EO.Web.DeleteCommandColumn Obj = new EO.Web.DeleteCommandColumn();
                            Obj.DeleteText = C.mFieldText;
                            EOGc = Obj;
                            break;
                        }
                    default:
                        EOGc = new EO.Web.StaticColumn();
                        break;
                }

                EOGc.DataField = C.mFieldName;
                EOGc.HeaderText = C.mFieldDesc;
                EOGc.DataFormat = C.mDataFormat;
                EOGc.Name = C.mColumnName;
                EOGc.ClientSideBeginEdit = C.mClientSideBeginEdit;
                EOGc.ClientSideEndEdit = C.mClientSideEndEdit;
                EOGc.Width = C.mWidth;
                EOGc.Visible = C.mVisible;
                EOGc.ReadOnly = !C.mEnabled;
                EOGc.AllowSort = AllowSort;

                if (C.mEOGridCellStyle != null)
                { EOGc.CellStyle = C.mEOGridCellStyle; }

                EOGrid.Columns.Add(EOGc);
            }

            if (HasDelete)
            {
                EO.Web.DeleteCommandColumn Obj = new EO.Web.DeleteCommandColumn();
                Obj.DeleteText = "Delete";
                EOGrid.Columns.Add(Obj);
            }

            if (Key != "")
            { EOGrid.KeyField = Key; }

            EOGrid.DataBind();
        }
        public static void BindEOGrid(
            ref EO.Web.Grid EOGrid
            , DataTable Dt
            , List <ClsBindGridColumn_EO> Gc
            , string Key     = ""
            , bool AllowSort = true
            , bool HasDelete = false)
        {
            EOGrid.DataSource = Dt;

            if (EOGrid.Columns.Count > 0)
            {
                EOGrid.Columns.Clear();
            }

            EOGrid.AutoGenerateColumns = false;
            EOGrid.AllowPaging         = false;

            EO.Web.GridColumn EOGc = null;

            foreach (ClsBindGridColumn_EO C in Gc)
            {
                switch (C.mFieldType)
                {
                case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Static:
                    EOGc = new EO.Web.StaticColumn();
                    break;

                case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Text:
                    EOGc = new EO.Web.TextBoxColumn();
                    break;

                case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Checkbox:
                    EOGc = new EO.Web.CheckBoxColumn();
                    break;

                case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_DateTime:
                    EOGc = new EO.Web.DateTimeColumn();
                    break;

                case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Button:
                {
                    EO.Web.ButtonColumn Obj = new EO.Web.ButtonColumn();
                    Obj.CommandName = C.mCommandName;
                    Obj.ButtonType  = C.mButtonType;
                    Obj.ButtonText  = C.mFieldText;
                    EOGc            = Obj;
                    break;
                }

                case Layer01_Constants.eSystem_Lookup_FieldType.FieldType_Delete:
                {
                    EO.Web.DeleteCommandColumn Obj = new EO.Web.DeleteCommandColumn();
                    Obj.DeleteText = C.mFieldText;
                    EOGc           = Obj;
                    break;
                }

                default:
                    EOGc = new EO.Web.StaticColumn();
                    break;
                }

                EOGc.DataField           = C.mFieldName;
                EOGc.HeaderText          = C.mFieldDesc;
                EOGc.DataFormat          = C.mDataFormat;
                EOGc.Name                = C.mColumnName;
                EOGc.ClientSideBeginEdit = C.mClientSideBeginEdit;
                EOGc.ClientSideEndEdit   = C.mClientSideEndEdit;
                EOGc.Width               = C.mWidth;
                EOGc.Visible             = C.mVisible;
                EOGc.ReadOnly            = !C.mEnabled;
                EOGc.AllowSort           = AllowSort;

                if (C.mEOGridCellStyle != null)
                {
                    EOGc.CellStyle = C.mEOGridCellStyle;
                }

                EOGrid.Columns.Add(EOGc);
            }

            if (HasDelete)
            {
                EO.Web.DeleteCommandColumn Obj = new EO.Web.DeleteCommandColumn();
                Obj.DeleteText = "Delete";
                EOGrid.Columns.Add(Obj);
            }

            if (Key != "")
            {
                EOGrid.KeyField = Key;
            }

            EOGrid.DataBind();
        }