0

我想以这种方式(图像)在网格视图中显示值,我该如何执行它,我不知道,如果我必须编辑列或添加模板字段。请帮助。如果我们添加一个页脚,它只能显示在最后一行,但是,如何使它显示在中心。

在此处输入图像描述

4

4 回答 4

1
<asp:GridView runat="server" ID="gdv" AutoGenerateColumns="false" Width="100%">
    <Columns>
        <asp:TemplateField>
            <ItemTemplate>
                <table width="100%">
                    <tr>
                        <td>
                            Exam Date
                        </td>
                        <td>
                            <%#Eval("Exam_Date") %>
                        </td>
                        <td>
                            Section
                        </td>
                        <td>
                            <%#Eval("Section") %>
                        </td>
                    </tr>
                    <tr>
                        <td>
                            Total Students
                        </td>
                        <td>
                            <%#Eval("Total_Students") %>
                        </td>
                        <td>
                            No. of students passed
                        </td>
                        <td>
                            <%#Eval("StudentPassed") %>
                        </td>
                    </tr>
                    <tr>
                        <td colspan="2">
                            over all pass percentange
                        </td>
                        <td colspan="2">
                            <%#Eval("Overall_Percent") %>
                        </td>
                    </tr>
                </table>
            </ItemTemplate>
        </asp:TemplateField>
    </Columns>
</asp:GridView>

在cs页面上:

gdv.DataSource = YourDataSource;
gdv.DataBind();
于 2013-10-03T17:30:48.973 回答
1

最好使用类似RepeaterDataList控件之类的东西,这样可以更好地控制输出。

于 2013-10-03T17:18:54.430 回答
0

您可以为此显示使用 Gridview 页脚。

 <asp:TemplateField>
   <FooterTemplate>
   <table>
   <tr>
    <td>
     <asp:Label ID="lblname" runat="server" Text="NAME"></asp:Label>
     </td>
    <td>
      <asp:TextBox ID="txtbx" runat="server"></asp:TextBox>
    </td>
    </tr>
   </table>
  </FooterTemplate>
 </asp:TemplateField>  

在 RowDataBound 事件中,您可以将总计设置为 label 。

protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
    {
      if (e.Row.RowType == DataControlRowType.Footer)
      {
         Label lbl = (Label)e.Row.FindControl("lblTotal");
         lbl.Text = "Total";
      }
   }
于 2013-10-03T14:11:01.430 回答
0

我想你需要做一个列跨越才能有这种外观。(我假设您拥有绑定到控件所需的所有数据。)

于 2013-10-03T13:52:00.450 回答