我需要显示一些文本框,并且能够让用户“添加另一行”
我尝试了一个数据列表和转发器,但是当控件空白时它根本没有显示任何内容。
<asp:DataList id="dlIso" runat="server" RepeatColumns="2" RepeatDirection="vertical" >
<ItemTemplate>
test</ItemTemplate>
</asp:DataList>
所以在这种情况下,“测试”现在显示...
实现这一目标的最佳方法是什么?
谢谢!
答案 0 :(得分:2)
为了提供&#34;添加另一行&#34;无论是Repeater还是DataList的功能,您都必须将另一个项添加到您将控件绑定到的任何数据源,并调用.DataBind()。
如果您将数据绑定到最初不包含任何记录的内容,则应使用带有EmptyDataTemplate(GridView,ListView或DetailsView)的控件。对于你正在做的事情,我可能会推荐ListView。
答案 1 :(得分:1)
您需要查看 InsertItemTemplate
。
抱歉,这是针对新ListView
的。我想上次我这样做时使用的是FooterTemplate
:
http://quickstarts.asp.net/QuickStartv20/aspnet/doc/ctrlref/data/datalist.aspx
我不知道这是否应该这样做,但是无论当前页面如何,页脚都会停留,因此插入控件始终可见。它运作良好。您还可以模拟命令超链接(编辑,更新,取消等),但我不记得副手如何。
ListView
的一组好文章可以在这里找到:
http://www.4guysfromrolla.com/articles/061709-1.aspx
链接页面也是讨论插入的页面,但我建议从头开始阅读该批次。
答案 2 :(得分:0)
问题是,在你没有将转发器绑定到某个datasource
之前,它不会显示itemtemplate中的任何内容...所以你需要对文本框创建一些datasource
为每个新行添加一个项目到datasource
并重新绑定转发器..
datasource
中的项目数是您将在前面显示的行数