2015-01-14 32 views
0

下面是我的代碼,代碼爲每個HyperLink創建一個新的CheckBox,然後它將每個CheckBox命名爲Hyperlink的名稱。然後我有一個IF語句來檢查動態創建的CheckBox是否已被選中。如果有,請在標籤中顯示CheckBox的名稱。Dynamic Checkbox.Checked if語句

但是..標籤沒有填充。我已經測試了一切,如果我手動完成標籤填充。標籤也保存了視圖狀態。有任何想法嗎? :)

foreach (HyperLink folder in folderList) 
      { 
       CheckBox checkbox = new CheckBox(); 
       checkbox.Text = folder.Text.ToString(); 
       folder.Controls.Add(check); 
       checkbox.EnableViewState = true; 
       checkbox.AutoPostBack = true;  

       if(check.Checked) 
       { 
        selectedFolder.Text = check.Text.ToString(); 
       } 

      } 

回答

0

在我看來,你沒有留下任何時間檢查複選框(用戶輸入)。您應該使用事件處理程序或類似的東西來捕獲複選框被選中的事件。

此外,我沒有看到「檢查」在任何地方定義..你的意思是「複選框」,而不是「檢查」?

+0

感謝您的回覆。是的,爲了方便閱讀,我將支票改爲複選框。你說添加一個事件hander。我試過這個check.CheckedChanged + = checkCheckBox();然而,a。我無法將我的標籤作爲參數。另外當創建一個通用的事件處理程序傳遞(發送者,e)我也無法得到那個工作。就像你說我不認爲有時間檢查用戶輸入。在這種情況下,事件處理程序會爲用戶輸入提供什麼樣的時間?再次感謝 – mikeathers

+1

這可能是另一個更有資格回答:)的問題。但我懷疑你正在用(sender,e)方法走向正確的方向。您需要的信息應該可以從發件人處獲取。只是玩它,直到它的工作.. – Minh

+0

好的再次感謝,即時通訊努力引用我的asp:標籤雖然在事件處理程序中,因爲所有這一切都在繼承我的默認web窗體的類:/任何想法? – mikeathers