如何将 CssClass 应用于 DataGrid HyperLinkColumn 的标题单元格?

Posted

技术标签:

【中文标题】如何将 CssClass 应用于 DataGrid HyperLinkColumn 的标题单元格?【英文标题】:How to Apply CssClass to header cell of DataGrid HyperLinkColumn? 【发布时间】:2010-11-17 12:21:57 【问题描述】:

我有一段代码,基本上是这样的:

<asp:DataGrid>
    <Columns>
        ...
        <asp:BoundColumn  HeaderText="Bar" ...>
            <itemstyle CssClass="foo">
        </asp:BoundColumn>

这个输出

<table>
    <tr>
        <td>Bar</td>
        <td class="foo">...</td>
        <td class="foo">...</td>
        <td class="foo">...</td>
....

但我想要这个:

<table>
    <tr>
        <td class="foo">Bar</td>
        <td>...</td>
        <td>...</td>
        <td>...</td>
....

但我似乎无法实现它。我敢打赌这很简单,但我在任何地方都找不到它。

我试过了,但输出是一样的:

<asp:DataGrid>
    <Columns>
        ...
        <asp:BoundColumn ItemStyle-CssClass="foo"  HeaderText="Bar" ...>
        </asp:BoundColumn>

帮助表示赞赏!

【问题讨论】:

【参考方案1】:

你想要 HeaderStyle-CssClass 而不是 ItemStyle-CssClass。

<asp:BoundColumn HeaderStyle-CssClass="foo"  HeaderText="Bar" ...>
</asp:BoundColumn>

【讨论】:

【参考方案2】:

尝试标题样式:

<asp:BoundField DataField="bar" HeaderText="bar" SortExpression="bar">
   <ItemStyle    CssClass="fooItem"  />
   <HeaderStyle   CssClass="fooHeader"  />             
</asp:BoundField>

或者如果它应用于所有标题

<Columns>
...
</Columns>
...
<HeaderStyle        CssClass="foo"  />
<RowStyle           CssClass="fooRow"    />
<AlternatingRowStyle CssClass="fooAltRow"    />
...

【讨论】:

以上是关于如何将 CssClass 应用于 DataGrid HyperLinkColumn 的标题单元格?的主要内容,如果未能解决你的问题,请参考以下文章

如何将多个“CssClass”分配给asp.net中的控件

如何将多个 cssclass 名称设置为启用 ASP.NET 主题的控件?

DataGrid.RowStyle 仅适用于初始绑定

如何将工厂用于 DataGrid.CanUserAddRows = true

c#大圣之路笔记——c# 从DataGrid中导出数据 Session

如何使用 CSS 设置 asp.net 菜单的样式