任何人都可以告诉我如何为asp.net数据网格控件做样式。我有以下要求。我想知道这些样式类应用于哪些属性
1。标题行应在顶部和底部有边框。没有左右边框。 2。想要在标题行的每一列之间有一个行分隔符。对于Left和Right.Lt,它不需要打开 3.需要为每个列值应用不同的样式。如何提及不同列的各种类?
我正在寻找一个在所有具有相同效果的浏览器中呈现的分辨率
答案 0 :(得分:2)
您可以在<asp:DataGrid>
标记中添加如下所示的部分:
<HeaderStyle Font-Bold="True" HorizontalAlign="Center" VerticalAlign="Top" BackColor="SaddleBrown" ForeColor="Ivory" />
或者您可以在列模板中设置样式:
<asp:BoundColumn HeaderText="Account Number"
DataField="AccountNumber" ReadOnly="True"
HeaderStyle-Font-Bold="True" HeaderStyle-HorizontalAlign="Center"
ItemStyle-HorizontalAlign="Left"></asp:BoundColumn>
我认为第二种方法你会有更好的运气。我遇到了一些<HeaderStyle>
标记样式在<asp:DataGrid>
标记下只显示时未应用的问题。
如果你想将相同的样式传递给其他DataGrids,你可以创建一个外观,这样你就可以在任何地方使用相同的标题样式。
答案 1 :(得分:2)
在ASP.net DataGrids上查看4guysfromrolla.com article series。 Part 2讨论了DataGrids的样式。
答案 2 :(得分:1)
DataGrid和DataTable控件呈现表格。所以使用CSS:
table { ... }
thead { ... }
tbody { ... }
tfoot { ... }
tr { ... }
td { ... }
th { ... }
有很多目标要素。
...这里有一些代码可以帮助您入门:
/* target table-rows in the header element of a table and modify border-styles */
thead tr {
border-top: 1px solid #000;
border-bottom: 1px solid #000;
}
答案 3 :(得分:-1)
使用网格的CssClass属性为表提供css类。要从前导元素和结束元素中获取不同的行为,还会将类应用于列标题和单元格。然后使用CSS来设置表格元素的样式。 IE:
ASPX:
<asp:DataGrid CssClass="grid" . . . .
<asp:BoundColumn HeaderClass = "first" ItemClass = "first" . . . .
(other columns)
<asp:BoundColumn HeaderClass = "last" ItemClass = "last" . . .
CSS:
table.grid th { border: solid 1px black}
table.grid th.first {border-left: 0px}
table.grid th.last {border-right: 0px}
不需要使用ASP.NET样式,主要是因为你可以使用CSS获得更多的光滑而且没有膨胀的代码。