求助!关于express gridControl分组展开问题

Nemo_XP 2014-09-01 02:56:36
如图,我想在已进入窗体就把当前年当前月的信息展开。可是不知道怎么做,希望大神们指点一二。
...全文
635 9 打赏 收藏 转发到动态 举报
AI 作业
写回复
用AI写文章
9 条回复
切换为时间正序
请发表友善的回复…
发表回复
Nemo_XP 2014-09-01
  • 打赏
  • 举报
回复
引用 8 楼 duanzi_peng 的回复:
[quote=引用 7 楼 spw55381155 的回复:]
            for (int i = -1; gridView1.IsGroupRow(i); i--)
            {
                int row = gridView.GetDataRowHandleByGroupRowHandle(i);

                DataRow dr = gridView.GetDataRow(row);

                if (dr["y"].ToString() == System.DateTime.Now.Year.ToString())
                {
                    gridView.SetRowExpanded(i, true);
                    if (dr["m"].ToString() == System.DateTime.Now.Month.ToString())
                    {
                        gridView.SetRowExpanded(i, true);
                    }
                }
            }
而这段代码是对数据行的处理,而不是分组,是这个意思吗?
引用 7 楼 spw55381155 的回复:
            for (int i = -1; gridView1.IsGroupRow(i); i--)
            {
                int row = gridView.GetDataRowHandleByGroupRowHandle(i);

                DataRow dr = gridView.GetDataRow(row);

                if (dr["y"].ToString() == System.DateTime.Now.Year.ToString())
                {
                    gridView.SetRowExpanded(i, true);
                    if (dr["m"].ToString() == System.DateTime.Now.Month.ToString())
                    {
                        gridView.SetRowExpanded(i, true);
                    }
                }
            }
而这段代码是对数据行的处理,而不是分组,是这个意思吗?
可以这么理解,这么容易记就这么理解。 就是处理 数据的展现形式。[/quote] 恩,6楼的理解对吗?关于分组?另外,希望加下你的qq,以后有关于dev的问题想直接请教你。我的qq是120048402.
  • 打赏
  • 举报
回复
引用 7 楼 spw55381155 的回复:
            for (int i = -1; gridView1.IsGroupRow(i); i--)
            {
                int row = gridView.GetDataRowHandleByGroupRowHandle(i);

                DataRow dr = gridView.GetDataRow(row);

                if (dr["y"].ToString() == System.DateTime.Now.Year.ToString())
                {
                    gridView.SetRowExpanded(i, true);
                    if (dr["m"].ToString() == System.DateTime.Now.Month.ToString())
                    {
                        gridView.SetRowExpanded(i, true);
                    }
                }
            }
而这段代码是对数据行的处理,而不是分组,是这个意思吗?
引用 7 楼 spw55381155 的回复:
            for (int i = -1; gridView1.IsGroupRow(i); i--)
            {
                int row = gridView.GetDataRowHandleByGroupRowHandle(i);

                DataRow dr = gridView.GetDataRow(row);

                if (dr["y"].ToString() == System.DateTime.Now.Year.ToString())
                {
                    gridView.SetRowExpanded(i, true);
                    if (dr["m"].ToString() == System.DateTime.Now.Month.ToString())
                    {
                        gridView.SetRowExpanded(i, true);
                    }
                }
            }
而这段代码是对数据行的处理,而不是分组,是这个意思吗?
可以这么理解,这么容易记就这么理解。 就是处理 数据的展现形式。
Nemo_XP 2014-09-01
  • 打赏
  • 举报
回复
            for (int i = -1; gridView1.IsGroupRow(i); i--)
            {
                int row = gridView.GetDataRowHandleByGroupRowHandle(i);

                DataRow dr = gridView.GetDataRow(row);

                if (dr["y"].ToString() == System.DateTime.Now.Year.ToString())
                {
                    gridView.SetRowExpanded(i, true);
                    if (dr["m"].ToString() == System.DateTime.Now.Month.ToString())
                    {
                        gridView.SetRowExpanded(i, true);
                    }
                }
            }
而这段代码是对数据行的处理,而不是分组,是这个意思吗?
Nemo_XP 2014-09-01
  • 打赏
  • 举报
回复
//我不太明白“分组”的意思,我调试了一下,这样理解的,你看看对不对(我这是先按年分组后按月分组,要求凡是本年的,所有月“组展”开,凡是本月的所有日“数据”展开)
for (int i = -1; gridView.IsGroupRow(i); i--) //判断是否为组,按年,月月.... 年,月....循环,数据非分组跳过?
{
if (gridView.GetGroupRowValue(i).ToString() == System.DateTime.Today.Year.ToString())
{
gridView.SetRowExpanded(i, true);
for (int j = i - 1; j >= i - gridView.GetChildRowCount(i); j--) //对当前年份下的所有月分组循环,数据除外?
{
if (gridView.GetGroupRowValue(j).ToString() == System.DateTime.Today.Month.ToString())
{
gridView.SetRowExpanded(j, true);
}
}
return;
}
}
  • 打赏
  • 举报
回复

 //for (int i = -1; gridView.IsGroupRow(i); i--)         //  gridView.IsGroupRow(i)  这个返回bool类型的,根据i的值去判断当前row是否是GroupRow
            //{
            //    if (gridView.GetGroupRowValue(i).ToString() == System.DateTime.Today.Year.ToString())    // 这就是你取得的分组的具体值
            //    {
            //        gridView.SetRowExpanded(i, true);    // 设置展开
            //        for (int j = i - 1; j >= i - gridView.GetChildRowCount(i); j--)   //分组后  就存在  ”子父 关系“,这里就可以获得这一组中包含多少行。
            //        {
            //            if (gridView.GetGroupRowValue(j).ToString() == System.DateTime.Today.Month.ToString())   // 同判断 Year 一样。
            //            {
            //                gridView.SetRowExpanded(j, true);
            //            }
            //        }
            //        return;
            //    }
            //}
Nemo_XP 2014-09-01
  • 打赏
  • 举报
回复
引用 3 楼 duanzi_peng 的回复:
参见:http://www.devexpress.com/Support/Center/Question/Details/A67
已经找到代码了,可是不懂什么意思, //for (int i = -1; gridView.IsGroupRow(i); i--) //{ // if (gridView.GetGroupRowValue(i).ToString() == System.DateTime.Today.Year.ToString()) // { // gridView.SetRowExpanded(i, true); // for (int j = i - 1; j >= i - gridView.GetChildRowCount(i); j--) // { // if (gridView.GetGroupRowValue(j).ToString() == System.DateTime.Today.Month.ToString()) // { // gridView.SetRowExpanded(j, true); // } // } // return; // } //} for (int i = -1; gridView1.IsGroupRow(i); i--) { int row = gridView.GetDataRowHandleByGroupRowHandle(i); DataRow dr = gridView.GetDataRow(row); if (dr["y"].ToString() == System.DateTime.Now.Year.ToString()) { gridView.SetRowExpanded(i, true); if ( dr["m"].ToString() == System.DateTime.Now.Month.ToString()) { gridView.SetRowExpanded(i, true); } } } 注释了的代码能实现所需的要求,而下面我自己写的把所有的2014年的都展开了,你能帮我解释下代码的意思吗?
Nemo_XP 2014-09-01
  • 打赏
  • 举报
回复
来个大神啊。。。。。。
Nemo_XP 2014-09-01
  • 打赏
  • 举报
回复
这是数据绑定代码。 string strSql = @"select year(insertTime) y,month(insertTime) m, * from dbo.CheckList "; DataTable dtSource = SqlHelper.ExecuteDataset(PubConstant.ConnectionString, CommandType.Text, strSql).Tables[0]; gridControl1.DataSource = dtSource;

111,097

社区成员

发帖
与我相关
我的任务
社区描述
.NET技术 C#
社区管理员
  • C#
  • AIGC Browser
  • by_封爱
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告

让您成为最强悍的C#开发者

试试用AI创作助手写篇文章吧