1

我想在我的网页上显示表格中的每条记录,如果表格中的记录增加,div 的数量也应该增加。
我如何使用 ASP.net 实现这一目标。
如果有人可以指导我,因为我是 ASP.Net 的新手,
请提前谢谢

4

5 回答 5

2

如前所述,使用 MVC 将是一个不错的方法,但您必须学习一点才能使用它。根据当前场景,您可以使用专为您想要完成的任务而设计的中继器。

假设您的数据库看起来与此类似..

id int  primary key 
name  nvarchar(50)

等等... //假设你现在在你的asp.net页面中有你的数据库数据,"dataFromDatabase" 只需定义一个这样的转发器

<div id="content">
   <asp:repeater id="repeaterData" runat="server">
   <HeaderTemplate>
     <Table>
        <tr>
           <th>Id:</th>
           <th>Name : </th>
        </tr>
   </HeaderTemplate>
     <ItemTemplate>
       <td><%#Eval("id")%></td>
       <td><%#Eval("name")%></td>
     </ItemTemplate>
   <FooterTemplate>
     </Table>
   </FooterTemplate>
</repeater>
</div>

并在您的 .aspx.cs 页面中

将转发器与您的数据源绑定

repeaterData.DataSource = dataFromDatabase
repeaterData.DataBind();

这就是你需要做的所有事情来让它运行起来......

并且使用GridView会更简单,您只需将其拖到ToolBox您的 aspx 文件中并在视觉上选择您的数据源,violla 就完成了......不需要编码......虽然您必须为编辑,删除和一些花哨的东西......

希望能帮助到你。

于 2013-03-29T11:54:48.557 回答
1

听起来您正在寻找实现中继器类

编辑 这里是您从上述链接中请求的一些示例代码:

<asp:Repeater
    DataMember="string"
    DataSource="string"
    DataSourceID="string"
    EnableTheming="True|False"
    EnableViewState="True|False"
    ID="string"
    OnDataBinding="DataBinding event handler"
    OnDisposed="Disposed event handler"
    OnInit="Init event handler"
    OnItemCommand="ItemCommand event handler"
    OnItemCreated="ItemCreated event handler"
    OnItemDataBound="ItemDataBound event handler"
    OnLoad="Load event handler"
    OnPreRender="PreRender event handler"
    OnUnload="Unload event handler"
    runat="server"
    Visible="True|False"
>
        <AlternatingItemTemplate>
            <!-- child controls -->
        </AlternatingItemTemplate>
        <FooterTemplate>
            <!-- child controls -->
        </FooterTemplate>
        <HeaderTemplate>
            <!-- child controls -->
        </HeaderTemplate>
        <ItemTemplate>
            <!-- child controls -->
        </ItemTemplate>
        <SeparatorTemplate>
            <!-- child controls -->
        </SeparatorTemplate>
</asp:Repeater>
于 2013-03-29T10:51:49.400 回答
0

您可以使用gridviewrepeater解决您的。

Gridview 基本示例
http://www.codeproject.com/Articles/23471/Editable-GridView-in-ASP-NET-2-0

中继器基本示例
http://www.w3schools.com/aspnet/aspnet_repeater.asp

于 2013-03-29T10:59:11.940 回答
0

如果您对 ASP.NET 完全陌生,我建议您使用 ASP.NET MVC 框架而不是 WebForms。归根结底,这是一个品味问题,但 MVC 框架的设计目标是让编写高质量代码变得容易,所以如果你还是从头开始,你不妨从一开始就学会把它做好。

最好的起点可能是ASP.NET MVC 的官方站点。他们有一个很好的“入门”指南,以及从绝对初学者到高级 Web 开发级别的大量教程。

对所有 WebForms 粉丝的附注:我绝对不是说你不能用 WebForms 编写高质量的代码 - 但是,如果你环顾互联网,你会发现大多数示例结构都很糟糕并且充满了反模式。从 ASP.NET MVC 框架开始,您发现 Web 资源展示良好实践的机会更高,而不是快速破解。

于 2013-03-29T10:59:44.380 回答
0

或者:

 for(int i= 0;i<10i++){
            label.text="<div>"+something+"</div>"+label.text
        }
于 2013-03-29T12:09:19.783 回答