2010-09-20 67 views
-1

試圖得到它,所以如果你離開點擊,它會填寫4個文本框,然後如果你使用下拉列表並再次點擊它,它會填充在4個不同的文本框中 - 必須一次填充20個,4個。C#for循環on button1_click1,int我似乎前進錯了

int carpick, qty, total, i; 

    protected void Button1_Click1(object sender, EventArgs e) 
    { 
     for (i = 0; i != 5; ++i) 
     { 
      carpick = 0; qty = 0; total = 0; 
      { 

       carpick = Convert.ToInt32(CarpickDD.SelectedItem.Value); 
       qty = Convert.ToInt32(QTYDD.SelectedItem.Value); 
       total = ((carpick * qty) + (750 * qty)); 

       Label1.Text = CarpickDD.SelectedItem.Text; 
       Label2.Text = CarpickDD.SelectedItem.Value; 
       Label3.Text = QTYDD.SelectedItem.Value; 
       Label4.Text = Convert.ToString(total);} 

     if (i != 1) 
     { 

      carpick = Convert.ToInt32(CarpickDD.SelectedItem.Value); 
      qty = Convert.ToInt32(QTYDD.SelectedItem.Value); 
      total = ((carpick * qty) + (750 * qty)); 
      Label5.Text = CarpickDD.SelectedItem.Text; 
      Label6.Text = CarpickDD.SelectedItem.Value; 
      Label7.Text = QTYDD.SelectedItem.Value; 
      Label8.Text = Convert.ToString(total); 
     } 

     } 
    } 

enter code here

回答

2

每次單擊該按鈕,您for循環開始於i = 0。因此,從每次調用到下一次調用都沒有保持任何狀態;你的按鈕不會「記住」你之前點擊它的頻率。

也就是說,你也不會使的任何使用變量i在循環內部(除了if (i != 1))。換句話說,你的循環目前在每個按鈕點擊上做同樣的事情,它確實同樣的事情每次點擊五次。如果你想在第二次點擊按鈕時填寫不同的文本框,那麼第二次肯定會做一些不同的事情?

+0

好吧,我明白你說的話 - 但有沒有辦法讓它前進?我真的很陌生,並且知道的不多 – estoy0no 2010-09-20 04:45:57

0

我想你想要這樣的:

int carpick, qty, total, i = 0; 

protected void Button1_Click1(object sender, EventArgs e) 
{ 
    carpick = Convert.ToInt32(CarpickDD.SelectedItem.Value); 
    qty = Convert.ToInt32(QTYDD.SelectedItem.Value); 
    total = ((carpick * qty) + (750 * qty)); 

    switch (i++) 
    { 
     case 0: 
      Label1.Text = CarpickDD.SelectedItem.Text; 
      Label2.Text = CarpickDD.SelectedItem.Value; 
      Label3.Text = QTYDD.SelectedItem.Value; 
      Label4.Text = Convert.ToString(total); 
      break; 

     case 1: 
      Label5.Text = CarpickDD.SelectedItem.Text; 
      Label6.Text = CarpickDD.SelectedItem.Value; 
      Label7.Text = QTYDD.SelectedItem.Value; 
      Label8.Text = Convert.ToString(total); 
      break; 

     case 2: 
      ..... etc .... 
    } 
} 
+0

這與我想要的很接近 - 當我調試它時,我得不到的唯一東西是我希望它最終有多行 - 它看起來像當我點擊按鈕,它只是重新加載頁面,並沒有保留以前的標籤 – estoy0no 2010-09-20 05:03:27