2011-06-22 9 views
2

ASP.NET 2.0にはGridViewという内部グリッド線のみを表示したいと思っています。ここに私のマークアップとCSSはこれまでのところです:ASP.NETのGridViewの内部グリッド線

<asp:GridView ID="myGrid" runat="server" GridLines="None" CssClass="myDataGridClass"> 
    <Columns> 
     ...columns here... 
    </Columns> 
</asp:GridView> 

CSS:

.myDataGridClass>tbody>tr>td /* Apply border to all cells */ 
{ 
    border:1px solid black; 
} 

.myDataGridClass>tbody>tr>th /* Apply border to headers */ 
{ 
    border:1px solid black; 
} 

.myDataGridClass>tbody>tr>td:last-child /* Remove right-side border */ 
{ 
    border-right-width:0; 
} 

.myDataGridClass>tbody>tr>td:first-child /* Remove left-side border */ 
{ 
    border-left-width:0; 
} 

.myDataGridClass>tbody>tr>th:last-child /* Remove right-side header border */ 
{ 
    border-right-width:0; 
} 

.myDataGridClass>tbody>tr>th:first-child /* Remove left-side header border */ 
{ 
    border-left-width:0; 
} 

.myDataGridClass>tbody>tr:last-child>td /* Remove bottom border */ 
{ 
    border-bottom-width:0; 
} 

.myDataGridClass>tbody>tr>th /* Remove top border */ 
{ 
    border-top-width:0; 
} 

は右これを行うための簡単な方法がなければならないという考えにIアム?上記の私のメソッドは、私がlast-childを使用しているので、IEでは動作しません。

+0

グリッド線が私に+1を助けた...ありがとう –

答えて

5
protected void Page_Load(object sender, EventArgs e) 
{ 
    this.myGrid.Attributes.Add("bordercolor", "#000"); 
} 

宣言的なbordercolor属性は、個々のセルではなく表自体にのみ適用されるインラインスタイル宣言を追加します。

bordercolor属性をプログラムで追加すると、インラインスタイルは使用されませんが、ブラウザーが表内のすべての罫線に適用されるHTML bordercolorプロパティーが使用されます。

このブログの記事の下のコメントを参照してください:あなたのコード内= "なし"

http://codersbarn.com/post/2009/05/31/Set-Color-of-GridLines-in-Gridview.aspx

0
GridLines="None" CellSpacing="2" BackColor="White"