[DevExpress]GridControl主从表显示

原创 2017年11月16日 13:07:45
今天接到用户的需求,物流分摊费用保存在销货单主表中,但物流人员需要看到从表的销货明细包含哪些产品和数量。主从表设计:
先看看效果吧:

这里写图片描述

private void GetDataList()
        {
            string sb = GetSQL();
            try
            {
                DBCon db = new DBCon(this.company);
                //销货单
                DataSet MatserDs = SqlHelper.ExecuteDataset(db.StringConnection(), CommandType.Text, sb.ToString());
                DataTable MatserDt = MatserDs.Tables[0];
                MatserDt.TableName = "Matser";
                if (MatserDt.Rows.Count > 0)
                {
                    //销货明细
                    string subSQL = "Select TH003 序号,TH004 品号,TH005 品名,TH006 规格,TH008 数量,TH001+Rtrim(TH002) AS DetailID FROM COPTH ";
                    DataSet DetailDs = SqlHelper.ExecuteDataset(db.StringConnection(), CommandType.Text, subSQL.ToString());
                    DataTable DetailDt = DetailDs.Tables[0];
                    DetailDt.TableName = "Detail";
                    DetailDs.Tables.Remove(DetailDt);
                    MatserDs.Tables.Add(DetailDt);


                    DataColumn keyColumn = MatserDs.Tables["Matser"].Columns["MasterID"];         //主键
                    DataColumn foreignColumn = MatserDs.Tables["Detail"].Columns["DetailID"];    //外键
                     //
                    //对于主从表,层次名至关重要,关系名必须和从表的层次名一致,
                    //否则从表显示的是从表的所有字段,而不是所设计的显示字段
                    //

                    MatserDs.Relations.Add("Detail", keyColumn, foreignColumn,false);     //从表的层次名
                    GridControl1.DataSource = MatserDs.Tables["Matser"];


                    btnFirst.Enabled = true;
                    btnLast.Enabled = true;
                    btnNetxt.Enabled = true;
                    btnPre.Enabled = true;
                    btnPreview.Enabled = true;
                }

            }
            catch (Exception ex)
            {
                XtraMessageBox.Show(ex.ToString(), "警告");
            }
            txtScan.Text = "";
        }
版权声明:本文为博主原创文章,未经博主允许不得转载。

DevExpressControl中的GridControl展现主从表数据结构

用DevExpress的GridControl展示层次数据结构。
  • blogtjf
  • blogtjf
  • 2015年04月21日 16:07
  • 3311

GridControl主从表设置

GridControl主从表的设置有目前我知道有2种方法一种是使用datarelation,一直是在对象中增加Childs 的 list。说实话,一开始弄这个主从表都弄的头大了。由于是做项目,都是使用...
  • yunanzhe987
  • yunanzhe987
  • 2012年07月19日 21:39
  • 4436

DevExpress GridControl gridView 主从表

DataSet ds = new DataSet(); //父GridView的数据 string sql = "select sc_prno,sc_p...
  • bk8897
  • bk8897
  • 2014年02月07日 17:11
  • 4192

DevExpress GridControl主从表

DevExpress一个非常强大的控件集,相信许多人在使用过后,都不会遗忘它。本文也是我有实际使用过程中,通过网上搜索资料,所总结的。   private void InitData()     ...
  • codefighting
  • codefighting
  • 2012年04月13日 16:22
  • 6050

DevExpress中GridControl 主从表如何实现

  • 2012年08月31日 13:16
  • 50KB
  • 下载

DevExpressControl中的GridControl展现主从表数据结构

用DevExpress的GridControl展示层次数据结构。
  • blogtjf
  • blogtjf
  • 2015年04月21日 16:07
  • 3311

devexpress表格gridcontrol实现列统计,总计,平均,求和等。

1、在许多项目中,经常要实现对某些列的统计。devexpress控件gridcontrol实现这些功能只需要设置某些属性,就可以达到要求了。以下例举了一个统计班级总数,人数总计,分数总计的案例。效果图...
  • kehaigang29
  • kehaigang29
  • 2015年06月29日 00:36
  • 4968

Devexpress gridcontrol列中根据值显示图片

Devexpress gridcontrol列中根据值显示图片
  • tatagg
  • tatagg
  • 2015年09月01日 16:35
  • 1464

DevExpress中如何实现GridControl的分页功能

DevExpress中如何实现GridControl的分页功能 简介:DevExpress中如何实现GridControl的分页功能,         主要是利用DataNavigator和GridC...
  • pengzhen8805
  • pengzhen8805
  • 2013年11月06日 10:56
  • 10491

在DevExpress GridControl的一列中显示图片

最近做项目的时候用到了将GridControl中一列设置为PictureEdit类型,然后通过这一列来显示图片。经过尝试发现有以下两种方式可行。 方法一、知道图片的路径与名称         比如:在...
  • xunzaosiyecao
  • xunzaosiyecao
  • 2015年03月19日 21:56
  • 3791
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:[DevExpress]GridControl主从表显示
举报原因:
原因补充:

(最多只允许输入30个字)