如何在表单中显示集合的下一个对象?
问题描述:
我有一个生成对象的列表。 点击下一步我想在形式如何在表单中显示集合的下一个对象?
在我的ASP页面显示下一个产品后,我有以下形式:
<form id="formNF" runat="server">
<asp:TextBox ID="txtRef" runat="server"></asp:TextBox>
<asp:TextBox ID="txtArticle" runat="server"></asp:TextBox>
<asp:TextBox ID="txtQauntity" runat="server"></asp:TextBox>
<asp:Button ID="ButtonNext" runat="server" Text="Next product" OnClick="ButtonNext_Click"/>
</form>
在我的代码隐藏:
private int i;
protected void ButtonNext_Click(object sender, EventArgs e) {
int nbrproducts = command.getListeproducts().Count;
i++;
for(i=0;i<nbrproducts;) {
mdeTxtRef.Text = command.getListeproducts()[i].Ref;
mdeTxtQte.Text = command.getListeproducts()[i].Qte;
}
}
但似乎ASP不喜欢这样。你有想法吗?你好。
答
你不能迭代next()方法或类似的东西吗? List是可序列化的,因此一个带有计数整数和页面重载的简单for循环应该达到您的目标。
也许你的foreach循环不会停止,因为List-Object是开放式的,所以它在空的List-places上运行?还是我误解了你的问题? “点击后继续”是什么意思?
例如:
//on button-click -->i++
for(int i=0;i<Products.size();)
{
//filling fields --> Products.get(i)
//reload page
}
甲Buttonclick也具有启动页面重载。
编辑:
莫非,你txtRef域(在foreach循环)地图无法正确的,因为你用3个不同的领域?
你可以尝试做一个整数场或类似的东西,这可以迭代吗?你想什么时候重置列表或其位置?我不是真的进入asp.net,所以我不知道List-Class获得了哪些属性和方法,但是如果没有简单的next()方法,则遍历列表中的迭代应该足够了。这个按钮的功能应该没什么大不了的。
谢谢,通过“点击后继续”我的意思是去下一个项目(产品),并显示它。 – TimeIsNear 2010-06-08 09:12:38
我在asp中也是初学者,没有next()方法。 private int i; protected void ButtonNext_Click(object sender,EventArgs e) int nbrproducts = command.getListeproducts()。Count; i ++;对于(i = 0; i
TimeIsNear
2010-06-08 12:05:13
是否会抛出任何有用的错误? 您可以定义一个全局整数,因此单击按钮只会增加整数并刷新页面(包括必须更新的字段)。字段本身引用全局整数,每个新整数的值都会导致一个更改的字段值。 – user357206 2010-06-08 12:26:31