.NET WebForm GridView 表头跨行跨列实现

需要实现的效果

通过GridView的OnRowCreated事件实现 

        /// <summary>
        /// 行创建事件
        /// </summary>
        /// <param name="sender"></param>
        /// <param name="e"></param>
        protected void gvInfo_RowCreated(object sender, GridViewRowEventArgs e)
        {
            DataControlRowType rowType = e.Row.RowType;
            if(rowType== DataControlRowType.Header)
            {
                //第一行表头
                TableCellCollection tcHeader = e.Row.Cells;
                tcHeader.Clear();

                tcHeader.Add(new TableHeaderCell());
                tcHeader[0].Text = "队组";
                tcHeader[0].Font.Bold = true;//加粗
                tcHeader[0].Attributes.Add("rowspan", "2"); //跨Row
                tcHeader[0].Attributes.Add("style", "width:150px;padding:20px 8px"); //样式设置

                tcHeader.Add(new TableHeaderCell());
                tcHeader[1].Text = "月计划";
                tcHeader[1].Font.Bold = true;//加粗
                tcHeader[1].Attributes.Add("rowspan", "2"); //跨Row
                tcHeader[1].Attributes.Add("style", "width:120px;padding:20px 8px"); //样式设置

                tcHeader.Add(new TableHeaderCell());
                tcHeader[2].Text = "当日";
                tcHeader[2].Font.Bold = true;//加粗
                tcHeader[2].Attributes.Add("colspan", "3"); //跨Column

                tcHeader.Add(new TableHeaderCell());                
                tcHeader[3].Text = "月累计</tr><tr style='background-color:WhiteSmoke;'>";//<tr>
                tcHeader[3].Font.Bold = true;//加粗
                tcHeader[3].Attributes.Add("colspan", "3"); //跨Column
                //第二行表头
                tcHeader.Add(new TableHeaderCell());
                tcHeader[4].Text = "计划";
                tcHeader[4].Font.Bold = true;//加粗
                tcHeader[4].Attributes.Add("style", "width:120px"); //宽度设置

                tcHeader.Add(new TableHeaderCell());
                tcHeader[5].Text = "实际";
                tcHeader[5].Font.Bold = true;//加粗
                tcHeader[5].Attributes.Add("style", "width:120px"); //宽度设置

                tcHeader.Add(new TableHeaderCell());
                tcHeader[6].Text = "超亏";
                tcHeader[6].Font.Bold = true;//加粗
                tcHeader[6].Attributes.Add("style", "width:120px"); //宽度设置

                tcHeader.Add(new TableHeaderCell());
                tcHeader[7].Text = "计划";
                tcHeader[7].Font.Bold = true;//加粗
                tcHeader[7].Attributes.Add("style", "width:120px"); //宽度设置

                tcHeader.Add(new TableHeaderCell());
                tcHeader[8].Text = "实际";
                tcHeader[8].Font.Bold = true;//加粗
                tcHeader[8].Attributes.Add("style", "width:120px"); //宽度设置

                tcHeader.Add(new TableHeaderCell());
                tcHeader[9].Text = "超亏";
                tcHeader[9].Font.Bold = true;//加粗
                tcHeader[9].Attributes.Add("style", "width:120px"); //宽度设置
            }
        }

 

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
ASP.NET WebForm 是一种用于构建动态网页的技术框架,可以通过使用它提供的控件和事件模型来开发各种功能丰富的网页应用程序。要实现审批流,可以按照以下步骤进行: 1. 数据库设计:首先,需要设计一个数据库来存储审批流相关的数据。可以创建一个“审批表(Approval)”来存储审批流的信息,例如审批ID、审批标题、申请人、审批状态等。 2. 创建页面:使用ASP.NET WebForm创建一个审批页面。可以通过使用ASP.NET控件,如GridView、Repeater等来展示审批列表或者审批详情。还可以通过Label、TextBox等控件来收集用户输入的审批意见。 3. 编写代码逻辑:在页面的代码文件中,可以编写逻辑来处理审批流。可以使用ASP.NET提供的事件模型,例如按钮的Click事件,来触发审批流的处理逻辑。例如,点击“通过”按钮后,可以更新数据库中的审批状态,并发送通知邮件给下一个审批人;点击“拒绝”按钮后,可以更新审批状态,并发送通知邮件给申请人。 4. 审批流控制:审批流通常是由多个环节构成的。可以使用ASP.NET WebForm中的页面导航控件(如MultiView)来控制审批流程的流转。可以通过编写代码来判断当前审批人是谁,根据审批人的决策来显示不同的页面视图。 5. 审批历史记录:审批流一般需要记录审批的历史记录。可以在数据库中创建一个“审批历史记录表(ApprovalHistory)”,用于存储每次审批的详细信息。可以在每次审批流程处理完成后,将相关信息记录到表中。 通过以上步骤,就可以在ASP.NET WebForm实现一个基本的审批流。当然,具体的实现方式还取决于实际需求和业务流程,并可以根据具体情况进行定制和扩展。
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值