2015-09-30 105 views
0

我有一個類Car,其中一些分支爲ModelYear。我有一個類Car的一些對象的列表(List<Car> carList = new List<Car>()),我想把這個列表放入一個HTML標記,但我不知道如何做到這一點。從列表中填充表格C#asp.net

我得到了一個模板,已經有一個<table>,這就是爲什麼我試圖用<table>而不是<asp:GridView>

我使用的WebForms

+0

WebForms或MVC? – David

+0

對不起,WebForms,我將編輯問題 –

+0

可能的重複[如何在ASP.NET中動態添加行到表中?](http://stackoverflow.com/questions/3789240/how-to-dynamically-add -arrow-in-asp-net) –

回答

1

如果您在使用<table>,而不是任何<asp:*>控件,您可以手動建立自己的網頁上的標記設置。

首先,您需要能夠從標記中訪問該對象。通過使上一個protected(或public)財產後臺代碼,頁面可以訪問它:

protected IList<Car> CarList { get { return carList; } } 

然後在頁面(從代碼隱藏類繼承),你可以訪問屬性來打造標記。類似這樣的:

<% foreach (var car in CarList) { %> 

<% } %> 

在該循環內部將是你的行,外面將是你的餐桌。事情是這樣的,也許:

<table> 
    <tr> 
    <th>Column Heading</th> 
    </tr> 
<% foreach (var car in CarList) { %> 
    <tr> 
    <td><%= car.SomeValue %></td> 
    </tr> 
<% } %> 
</table> 

這是類似一個如何可以在MVC構建標記,這樣你就可以把它這樣。儘管WebForms並不常見,並且通常建議按照其使用方式使用框架。從長遠來看,如果您開始使用WebForms,調整模板以使用服務器端控件而不是手動構建標記可能不太方便。服務器端控件具有許多事件綁定和代碼隱藏交互的附加好處。

+0

謝謝,它現在工作! –