2017-02-04 72 views
1

我使用webgrid在我的mvc web应用程序启用排序。如何设置webgrid头的自定义字体颜色?

var grid = new WebGrid(
    source: Model, 
    canPage: false, 
    ajaxUpdateContainerId: "mainGrid" 
    ); 

如果财产canSort =真(默认),那么头名的字体颜色永远蔚蓝(虽然我使用CSS),但我想换另外。

我该如何保持启用排序?

我的代码:

查看:

@grid.GetHtml(
     columns: grid.Columns(
      grid.Column(header: "", columnName: "isChecked", canSort: false, 
       format: @<text><input type="checkbox" name="checkbox_selected" value="@item.index" /></text>), 
      grid.Column(header: "Имя", columnName: "name", style: "name"), 
      grid.Column(header: "Тип", columnName: "type", style: "type"), 
      grid.Column(header: "Дата изменения", columnName: "date", style: "date"), 
      grid.Column(header: "Размер", columnName: "size", style: "size") 
      ), 

     tableStyle: "grid_table", 
     headerStyle: "header_table", 
     rowStyle: "row_table", 
     alternatingRowStyle: "alt-row_table" 
    ) 

CSS:

.header_table 
{ 
background-color: limegreen; 
color: black; 
padding-bottom: 4px; 
padding-top: 4px; 
} 

所有其他样式正常工作,但.header_table颜色排序启用不工作时(当其禁用作品)。

+0

请解释一下当你说你想改变它的意思吗? – Luke

+0

我的意思是另一种颜色,即不是默认的 –

+0

用CSS做?这可能对你有用... https://forums.asp.net/t/2036473.aspx?Can+we+change+the+webgrid+column+header+color+when+canSort+true+检查第二个链接 – Luke

回答

0

当您呈现您的Web网格视图,指定CSS类名:

<div> 
    @grid.GetHtml(
      tableStyle: "webgrid-table", 
      headerStyle: "webgrid-header", 
      footerStyle: "webgrid-footer", 
      alternatingRowStyle: "webgrid-alternating-row", 
      selectedRowStyle: "webgrid-selected-row", 
      rowStyle: "webgrid-row-style", 
      mode: WebGridPagerModes.All, 
      columns: 
      // ... more stuff here 
</div> 

我们现在可以指定网格的CSS样式和摆脱了蓝色的(我假定呈现蓝色是因为头部包含链接(<a>标签),因此第二CSS声明:https://stick2basic.wordpress.com/2013/04/10/how-to-set-webgrid-style-in-mvc/

.webgrid-header { color: #FF0000; background-color: #00FF00; } 
.webgrid-header a { color: #FF0000; } 

此页上更详细的解释3210

我希望这有助于!

+0

它的工作原理!非常感谢你 –

+0

很好听。我认为你必须添加第二个CSS行,目标是'a'标签? – Luke

+1

是的! (我实际上是一个小新手) –