行和行中的CSS的ASP.NET网格

时间:2012-10-11 15:24:49

标签: asp.net

我有以下代码

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>

3 个答案:

答案 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"并为CssClassHeader设置Item属性

答案 2 :(得分:0)

在创建列时,请使用HeaderStyle-CssClassItemStyle-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) { }块中。