前台只要拖一個Table控制項給一個ID就可以了,我們的操作都可以在後台進行。
代碼如下 |
複製代碼 |
<asp:Table ID="table" runat="server" BorderColor="#000000" BorderStyle="Solid" BorderWidth="0px" Caption="表格的標題" CellPadding="0" CellSpacing="0" Font-Bold="False" Font-Italic="False" Font-Overline="False" Font-Size="30px" Font-Strikeout="False" Font-Underline="False" Width="980px"> </asp:Table> |
這裡的Table是一個控制項,可以在後台對改表格進行行列的操作。
添加一行使用的是TableRow類,這個類相當於HTML標準中table標籤內部的tr標籤,如果要添加一行,我們可以這樣寫:
代碼如下 |
複製代碼 |
TableRow headUpTr = new TableRow(); table.Rows.Add(headUpTr) |
這樣就在table中添加了一行。
在一行中添加一列的話方法同上,使用的是TableCell,同理,這個類也相當於HTML中的td標籤。Table、TableRow、TableCell三個類組成了一個完整的表格。
代碼如下 |
複製代碼 |
TableCell td = new TableCell(); headUpTr.Cells.Add(td);TableCell |
的相關屬性可以更改表格的樣式,在對資料的結果集篩選的時候可以根據不同的值在迴圈輸出中對錶格進行個人化的設定。
最常用的TableCell屬性有:
ColumnSpan;用於列
RowSpan;用於跨行
Text;用於寫字串
Controls.Add();方法則是像儲存格中輸出控制項用的。
Attributes.Add();這個則是給儲存格增加屬性的,增加html標籤支援的屬性,例如Style、Align等等。
有些時候會遇到很多重用的情況,所以我會將一些操作寫成一個方法,以方便調用,例如
代碼如下 |
複製代碼 |
private void addtr(ref TableRow tr, string data, int colspan, int rowspan, string align, int width, string fontsize, int height,string style) { TableCell td = new TableCell(); td.Width = width; td.Attributes.Add("align", align); td.Attributes.Add("style", fontsize); td.CssClass = style; td.ColumnSpan = colspan; if (height != 20) { td.Height = height; } td.RowSpan = rowspan; td.Text = data.ToString(); tr.Cells.Add(td);
|
}我想應該還會有更簡單且更有效率的方法,但是目前我的能力有限,還是只能找到這樣的方式。雖然不是很高深的東西,但是對於初學者來說,或許會有一些協助的