我想以这种方式(图像)在网格视图中显示值,我该如何执行它,我不知道,如果我必须编辑列或添加模板字段。请帮助。如果我们添加一个页脚,它只能显示在最后一行,但是,如何使它显示在中心。
问问题
93 次
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
最好使用类似Repeater
或DataList
控件之类的东西,这样可以更好地控制输出。
于 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 回答