我有一個問題,我似乎總是絆倒,我有一個下拉框,您可以選擇一個數字,它創建x數量的文本框與圖像按鈕它的調查它圖像按鈕是用來創建「子答案」,所以他們可以有答案的答案,所以我的問題是我需要當他們擊中圖像按鈕來創建一個文本框下的原始文本框這裏是代碼。在面板中通過動態圖像按鈕添加文本框
for (Int32 i = 1; i <= NumberOfAnwsers; i++)
{
Literal l1 = new Literal();
l1.Text = "<tr><td>Answer " + i + " text.</td><td>";
TextBox tb = new TextBox();
tb.ID = "TextBoxAnswer" + i;
tb.EnableViewState = false;
tb.Width = 300;
Literal l3 = new Literal();
l3.Text = "</td><td>";
Literal l2 = new Literal();
l2.Text = "</td></tr>";
RadColorPicker CPI = new RadColorPicker();
CPI.PaletteModes = PaletteModes.WebPalette;
CPI.ID = "RadColorPicker" + i;
CPI.ShowIcon = true;
CPI.SelectedColor = System.Drawing.Color.Black;
ImageButton IBVideo = new ImageButton();
IBVideo.ID = "IBVideo" + i;
IBVideo.ImageUrl = "/images/video-icon.jpg";
IBVideo.ToolTip = "Add Video";
IBVideo.Height = 20;
IBVideo.Width = 20;
ImageButton IBAdd = new ImageButton();
IBAdd.ID = "IBAdd" + i;
IBAdd.ImageUrl = "/images/add-icon.png";
IBAdd.ToolTip = "Add Sub-Answers";
//IBAdd.OnClientClick = "showDialog(" + i + ");return false;";
IBAdd.Height = 20;
IBAdd.Width = 20;
//Add Textbox
PanelAnswersToQuestions.Controls.Add(l1);
PanelAnswersToQuestions.Controls.Add(tb);
PanelAnswersToQuestions.Controls.Add(l3);
PanelAnswersToQuestions.Controls.Add(CPI);
PanelAnswersToQuestions.Controls.Add(IBVideo);
PanelAnswersToQuestions.Controls.Add(IBAdd);
PanelAnswersToQuestions.Controls.Add(l2);
}
正如你可以看到我剛剛控件添加到面板上,我需要知道什麼時候的ImageButton被擊中我可以添加一個文本框,在這種情況下,它可能是更多的則只是一個文本框它。
我希望這是明確的,但由於某種原因,我不認爲這是...對不起。
您需要爲圖像按鈕訂閱事件處理程序,但是,您還需要留意或創建控件層次結構,並確保在每次發生任何事件處理後續的控制。總之,您需要確保所有項目都是在處理任何事件之前創建的。 – brumScouse 2010-11-01 20:50:08