经常有这样的情况,需要在一个窗体内根据数据源的不同加载不同的表头,通过xtragrid可以很容易的实现

1首先用xtragrid先制作两个表头文件存储为xml文件

2在代码中进行相应的调用

贴图先:

贴代码

     private void simpleButton1_Click(object sender, EventArgs e)
        {
            gridView1.RestoreLayoutFromXml(
                Path.Combine(Application.StartupPath, "DetailA.xml"), DevExpress.Utils.OptionsLayoutBase.FullLayout);
            //gridView1.DataSource=DataSet1

        }

        private void simpleButton2_Click(object sender, EventArgs e)
        {
            gridView1.RestoreLayoutFromXml(
                Path.Combine(Application.StartupPath, "DetailB.xml"), DevExpress.Utils.OptionsLayoutBase.FullLayout);
            //gridView1.DataSource=DataSet2
        }

代码很简单,但我当时犯了个错误没有使用DevExpress.Utils.OptionsLayoutBase.FullLayout选项,导致死活列头加载不正常

当然我们也可以利用窗体关闭时的事件保存所需要的表格属性【方法:SaveLayoutToXml()】,然后在窗体加载时采用【RestoreLayoutFromXml()】方法来加载用户的配置

posted on 2010-09-26 22:09  forrestsun  阅读(832)  评论(1编辑  收藏  举报