2010-06-08 78 views
1

我有一個生成對象的列表。 點擊下一步我想在形式如何在表單中顯示集合的下一個對象?

在我的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不喜歡這樣。你有想法嗎?你好。

回答

0

你不能迭代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()方法,則遍歷列表中的迭代應該足夠了。這個按鈕的功能應該沒什麼大不了的。

+0

謝謝,通過「點擊後繼續」我的意思是去下一個項目(產品),並顯示它。 – TimeIsNear 2010-06-08 09:12:38

+0

我在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

+0

是否會拋出任何有用的錯誤? 您可以定義一個全局整數,因此單擊按鈕只會增加整數並刷新頁面(包括必須更新的字段)。字段本身引用全局整數,每個新整數的值都會導致一個更改的字段值。 – user357206 2010-06-08 12:26:31

相關問題