我有以下代码
List<Department> depts = new List<Department>();
Department.Add(new Department() { DNo = 1, DName = "Accounting", DFloor="6" });
Department.Add(new Department() { DNo = 2, DName = "FInance", DFloor="3" });
我想将此数据绑定到GridView,以便输出以下内容。观察每个th和tr上的类。我怎样才能在ASP.NET中实现这一目标?
<thead>
<tr>
<th class="DNo">DNo</th>
<th class="DName">DName</th>
<th class= "DFloor">DFloor</th>
</tr>
</thead>
<tr>
<td class="DNo">1</td>
<td class="DName">Accounting</td>
<td class="DFloor">6</td>
</tr>
<tr>
<td class="DNo">2</td>
<td class="DName">FInance</td>
<td class="DFloor">3</td>
</tr>
答案 0 :(得分:0)
您可以尝试使用此代码 - 基于GridView class
<asp:GridView ID="GridView1" runat="server" AutoGenerateColumns="false">
<Columns>
<asp:BoundField HeaderText="DNo" DataField="DNo" />
<asp:BoundField HeaderText="DName" DataField="DName" />
<asp:BoundField HeaderText="DFloor" DataField="DFloor" />
</Columns>
</asp:GridView>
背后的代码
GridView1.DataSource = depts;
GridView1.DataBind();
答案 1 :(得分:0)
列是否自动生成?如果是,则需要将其更改为AutoGenerateColumns="False"
并为CssClass
和Header
设置Item
属性
答案 2 :(得分:0)
在创建列时,请使用HeaderStyle-CssClass
和ItemStyle-CssClass
属性。
<asp:GridView ID="gv"
AutoGenerateColumns="False"
runat="server">
<Columns>
<asp:BoundField HeaderStyle-CssClass="DNo" ItemStyle-CssClass="DNo" DataField="DNo" HeaderText="DNo" />
<asp:BoundField HeaderStyle-CssClass="DName" ItemStyle-CssClass="DName" DataField="DName" HeaderText="DName" />
<asp:BoundField HeaderStyle-CssClass="DFloor" ItemStyle-CssClass="DFloor" DataField="DFloor" HeaderText="DFloor" />
</Columns>
</asp:GridView>
然后在您的代码后面(Page_Load
事件处理程序工作),将您的数据绑定到网格:
gv.DataSource = depts;
gv.DataBind();
通常,人们会将其包含在if (!IsPostBack) { }
块中。