【问题标题】:Common CSS style for all GridView所有 GridView 的通用 CSS 样式
【发布时间】:2013-05-24 12:30:36
【问题描述】:

如果我的网站有很多喜欢的页面

  • PageOne
  • 第二页
  • 第三页
  • 第四页

我在每一页都有一个asp:GridView

  • PageOne(GridOne)
  • PageTwo(GridTwo)
  • PageThree(GridThree)
  • PageFour(GridFour)

我想以独特的风格改变所有 gridViews 的外观。

我不想用CssClass 点赞设置样式

<asp:GridView ID="GridOne" runat="server" CssClass="style">
</asp:GridView>

而且我不想使用他们的 ID。
有什么办法可以改变所有 gridViews 的样式,例如

  • 页眉样式
  • 行样式
  • 页脚样式
  • 选定的行样式 通过使用一些 CSS !

【问题讨论】:

  • 您可以在设计视图中“自动格式化...”您的gridview,按gridview 右侧的箭头。欢呼
  • 尝试在代码文件的每个页面上设置Gridview属性。
  • 是的 Sander H,这是合适的方法。但我不想对所有 GridViews 都这样做。如果我有 10 个 GridViews ,我必须更改 10 次。这就是我不想要的!
  • 例如 > css 文件中的h2{font-size: 1.5em;} 将更改整个项目的所有h2 字体大小。我想像这样改变 GridViews 的风格 :)
  • 如您所知,asp.net 网格视图将被转换为 HTML。如果你想这样做,就会有一些风险。您必须为 td、th 和 div 设置样式。如果您尝试为它们着色,则具有这些标签的其他元素也将具有相同的样式。即使是普通的表格也将具有与您的网格视图相同的样式。 jQgrid 将是一个选项。 jQGrid 使用 jQuery UI 的样式,因此您将在整个网站中为所有网格视图获得统一的布局。

标签: asp.net css gridview


【解决方案1】:

我最近遇到了同样的问题,我使用CSS Selectors 将样式应用于所有 GridView 表。如果你使用这个 CSS,那么你可以对 GridView 中的所有 td 应用 5px 的填充

    table[id*=GridView] td{
        padding: 5px;
    }

您可以更改为取消 td,使用 th 或其他任何东西,但这应该可以。我确实意识到这是事后 7 年的事,但知道这一点很有用。

更新:这是假设所有 GridView 都具有 Visual Studio 添加的默认 ID - 如果您更改了 ID,那么这将不起作用。

【讨论】:

  • 这假设每个网格视图的 id 都包含“GridView”。
  • 啊,是的,你是对的。我正在研究的旧版解决方案就是这样构建的——所有控件都是使用分配的默认 ID 创建的。这是一个警告。
【解决方案2】:

我认为如果不在 gridview 上设置 CSS 类属性,您就无法做到这一点 - 您也不想这样做,因为您冒着影响代码中其他元素的风险。

本文提供了一个 CSS 类示例,您可以使用它来设置网格视图的样式:http://evonet.com.au/creating-a-great-looking-gridview-with-filtering/

您需要做的就是将 CssClass="Gridview" 添加到您的每个 Gridview 中,我在您的问题中意识到这不是您想要的,但我认为这是最好的方法,

【讨论】:

    猜你喜欢
    • 2020-05-07
    • 1970-01-01
    • 1970-01-01
    • 2012-04-27
    • 1970-01-01
    • 2021-12-15
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多