幾年前,我決定創建自己的DataGrid,因爲我不喜歡微軟提供的標準。這是一個非常簡單的函數,它將DataTable作爲輸入參數,並返回一個字符串(用於在網頁上顯示錶格的html代碼)。asp.net自定義網格vs GridView/ListView
它非常靈活(有一些可選參數可以按照我想要的方式進行分頁,排序和格式化每列)並且速度快(僅從數據庫中檢索使用的記錄)。該函數本身非常短(約20行代碼)。我已經使用它至少4年了。
假設你有一個佔位符,在您的網頁,這是你將如何調用自定義函數:
MyPlaceHolder.Controls.Add(new LiteralControl(CreateCustomGrid(MyDataTable)))
CreateCustomGrid(MyDataTable)))將返回這樣的事情(如果MyDataTable有2列和2行):
<table class="MyClass" rules="all">
<tr>
<th>Column1</th>
<th>Column2</th>
</tr>
<tr>
<td align="center">Value1</td>
<td align="center">Value2</td>
</tr>
<tr>
<td align="center">Value3</td>
<td align="center"><a href=’MyLink’>Value4</a></td>
</tr>
</table>
內部函數知道如何給每個列的格式(此功能只被在一個網站上使用),但它也可以通過使用可選的參數來改變它的每一列。分頁和排序也一樣。總而言之,它非常靈活並且非常易於使用。
現在事情已經改變,並且DataGrid已被GridView和/或ListView取代。我已經看過他們,但我沒有看到他們做的任何事情,我的功能沒有,所以我會試圖繼續使用我的功能,但我可能忽略了一些東西。同時,繼續使用自定義函數生成html表格看起來有點奇怪。你對此有何看法?
+1我的想法正是如此。說得好! – 2009-05-05 15:34:49