C# DEVEXPRESS XTRAGRID KOLON SABITLE MENUSU

   private void gridView1_PopupMenuShowing(object sender, DevExpress.XtraGrid.Views.Grid.PopupMenuShowingEventArgs e)
        {
                if (e.MenuType == GridMenuType.Column)
                {
                    GridViewColumnMenu menu = e.Menu as GridViewColumnMenu;
                    if (menu.Column != null)
                    {
                        var myMenu = new DXMenuCheckItem("Sola - Kolon Sabitle/Geri Al", menu.Column.Fixed == FixedStyle.Left, default, new EventHandler(FreezeUnfreezeColumnLeft_Click));
                        myMenu.Image = global::MYAPP.Properties.Resources.Left;        //LEFT ARROW ICON FOR myMenu.Image = Left.png

                        myMenu.BeginGroup = true;
                        myMenu.Enabled = true;
                        myMenu.Tag = menu.Column;
                        e.Menu.Items.Add(myMenu);

                        var myMenu2 = new DXMenuCheckItem("Sağa - Kolon Sabitle/Geri Al", menu.Column.Fixed == FixedStyle.Right, default, new EventHandler(FreezeUnfreezeColumnRight_Click));
                        myMenu2.Image = global::MYAPP.Properties.Resources.Right; //RIGHT ARROW ICON FOR myMenu2.Image = Right.png
                        myMenu2.BeginGroup = false;
                        myMenu2.Enabled = true;
                        myMenu2.Tag = menu.Column;
                        e.Menu.Items.Add(myMenu2);
                    }
                }
	}

        private void FreezeUnfreezeColumnLeft_Click(object sender, EventArgs e)
        {
            DXMenuCheckItem item = sender as DXMenuCheckItem;
            GridColumn info = (GridColumn)item.Tag;
            if (info is null)
                return;
            if (info.Fixed == FixedStyle.Left)
            {
                info.Fixed = FixedStyle.None;
            }
            else
            {
                info.Fixed = FixedStyle.Left;
            }

        }

    private void FreezeUnfreezeColumnRight_Click(object sender, EventArgs e)
        {
            DXMenuCheckItem item = sender as DXMenuCheckItem;
            GridColumn info = (GridColumn)item.Tag;
            if (info is null)
                return;
            if (info.Fixed == FixedStyle.Right)
            {
                info.Fixed = FixedStyle.None;
            }
            else
            {
                info.Fixed = FixedStyle.Right;
            }
        }

SQL SERVER COLUMNLARI DATATABLEA DİNAMİK OLARAK AKTARMA

        public static DataTable getReadingTableFromSchema()
        {
            string TARIH = DateTime.Now.Month.ToString() + "-" + DateTime.Now.Day.ToString() + "-" + DateTime.Now.Year.ToString();
            using (SqlConnection conn = new SqlConnection(CS))
            {
                string sql = string.Format("EXEC[LG_118_ONAY] '','{0}'",  TARIH);
                conn.Open();
                SqlCommand cmd = new SqlCommand(sql, conn);
                DbDataAdapter da = new SqlDataAdapter(cmd);
                DataTable dtbl = new DataTable();
                da.FillSchema(dtbl, SchemaType.Source);
                return dtbl;
            }
        }

        private void INITIALIZEGV()
        {
            DataTable DTNEW = getReadingTableFromSchema();
            DataTable DT = _M.SELECT_LISTE();
            string TARIH = DateTime.Now.Month.ToString() + "-" + DateTime.Now.Day.ToString() + "-" + DateTime.Now.Year.ToString();

            foreach (DataRow item in DT.Rows)
            {
                string STUDENTCODE = item[0].ToString(); 
                DataRow s = _M.SELECT_ONAY(CODE, TARIH).Rows[0];
                DTNEW.ImportRow(s);
            }

            gc_CONTROL1.DataSource = DTNEW;
        }

C# SQL GET LOGICALREF

        public string GET_LOGICALREF(string TABLENAME, string LOGICALREF, string WHEREFIELDNAME, string WHEREDATA) {
            SqlDatabase sqlSERVICEDB;
            sqlSERVICEDB = new SqlDatabase(M.CONSTR_BMS);
            DataTable DATA = sqlSERVICEDB.ExecuteDataSet(new SqlCommand("SELECT TOP 1 " + LOGICALREF + " FROM " + TABLENAME + " WHERE " + WHEREFIELDNAME + "='" + WHEREDATA + "' ORDER BY LOGICALREF DESC")).Tables[0];
            if (DATA.Rows.Count == 0) {
                return "";
            }
            return DATA.Rows[0][0].ToString();
        }