2015-09-30 107 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

谢谢,它现在工作! –