实现效果

1. 添加 navigationPane。只绑定一个navigationPage

设置“showExpandButton” 可以隐藏全屏显示

2. 用代码向其中加入checkedit控件

private void LoadColumsSelect()
        {

            foreach (GridBand band in bandedGridView1.Bands)
            {
                foreach (BandedGridColumn column in band.Columns)
                {
                    if (column.Name== "姓名")
                    {
                        continue;
                    }
                    else if (column.Name == "性别")
                    {
                        continue;
                    }
                    else if (column.Name == "年龄")
                    {
                        continue;
                    }
                    else if (column.Name == "住址")
                    {
                        continue;
                    }
                    else
                    {
                        CheckEdit checkEdit = new CheckEdit();
                        checkEdit.Text = column.Name;
                        checkEdit.Properties.GlyphAlignment = DevExpress.Utils.HorzAlignment.Far;
                        checkEdit.Dock = DockStyle.Bottom;
                        checkEdit.Checked = true;
                        checkEdit.Properties.FullFocusRect = true;
                        checkEdit.TabIndex = column.AbsoluteIndex;
                        checkEdit.CheckedChanged += new EventHandler(checkEditCheckedChanged);
                        navigationPage1.Controls.Add(checkEdit);
                    }
                }
            }

        }


        private void checkEditCheckedChanged(object sender, EventArgs e)
        {
            CheckEdit checkEdit = sender as CheckEdit;
            int checkEditIndex = checkEdit.TabIndex;
            if (checkEdit.Checked)
            {
                bandedGridView1.Columns[checkEditIndex].VisibleIndex = checkEditIndex;
                bandedGridView1.Columns[checkEditIndex].Visible = true;
            }
            else
            {
                bandedGridView1.Columns[checkEditIndex].Visible = false;
            }
        }

或者

private void Load()
        {
           
            for (int i = gridView.Columns.Count - 1; i >= 0; i--)
            {
                gridView.Columns[i].Visible = false;
                CheckEdit checkEdit = new CheckEdit();
                checkEdit.Text = gridView.Columns[i].GetTextCaption();
                checkEdit.Checked=true;
                checkEdit.Properties.GlyphAlignment = DevExpress.Utils.HorzAlignment.Far;
                checkEdit.Dock = DockStyle.Top;
                checkEdit.Properties.FullFocusRect = true;
                checkEdit.TabIndex = gridView.Columns[i].AbsoluteIndex;
                checkEdit.CheckedChanged += new EventHandler(checkEditCheckedChanged);
                navigationPage.Controls.Add(checkEdit);
            }
            
        }

        private void checkEditCheckedChanged(object sender, EventArgs e)
        {            
            CheckEdit checkEdit = sender as CheckEdit;
            int checkEditIndex = checkEdit.TabIndex;
            if (checkEdit.Checked)
            {
                gridView.Columns[checkEditIndex].VisibleIndex = checkEditIndex;
                gridView.Columns[checkEditIndex].Visible = true;
            }
            else
            {
                gridView.Columns[checkEditIndex].Visible = false;
            }

        }

更多推荐