This is a migrated thread and some comments may be shown as answers.

[Solved] Create dynamic fields in ajaxPanel

2 Answers 96 Views
General Discussions
This is a migrated thread and some comments may be shown as answers.
Mohammadreza reiazi
Top achievements
Rank 1
Mohammadreza reiazi asked on 06 Jan 2010, 05:02 PM

hi

i want to create some check box and ,when user click on it's , dynamically create 3 filed(RadTextBox) for each them.

i create it  but when click on each them.only create one row and when click on other check box, previos row will be clear and new created.

i want each row create in one line and user can fill it's.

my code

...  
 
System.Web.UI.HtmlControls.HtmlTable tbl;  
 System.Web.UI.HtmlControls.HtmlTableRow row = new System.Web.UI.HtmlControls.HtmlTableRow();  
 System.Web.UI.HtmlControls.HtmlTableCell cell = new System.Web.UI.HtmlControls.HtmlTableCell();  
 protected void CheckBox1_CheckedChanged(object sender, EventArgs e)  
 {  
 if (CheckBox1.Checked == true)  
 {  
 tbl = new System.Web.UI.HtmlControls.HtmlTable();  
 tbl.ID = "tbl";  
 tbl.Width = "250px";  
 tbl.Border = 1;  
 row = new System.Web.UI.HtmlControls.HtmlTableRow();  
 //RadAjaxPanel2.Alert("text chnaged");  
 RadTextBox rtxtNewTextBox;  
 for (int i = 0; i < 3; ++i)  
 {  
 cell = new System.Web.UI.HtmlControls.HtmlTableCell();  
 if (i == 0)  
 {  
 rtxtNewTextBox = new RadTextBox();  
 rtxtNewTextBox.ID = "Txt" + (RadComboBox1.SelectedItem.Value).ToString() + RadComboBox1.SelectedItem.Text + i;  
 rtxtNewTextBox.Text = "check1";  
 rtxtNewTextBox.Label = ":" + RadComboBox1.SelectedItem.Text;  
 //rtxtNewTextBox.EmptyMessage = strMappedName;  
 //rtxtNewTextBox.Text = strMappedName;  
 cell.Controls.Add(rtxtNewTextBox);  
 
 }  
 if (i == 1)  
 {  
 rtxtNewTextBox = new RadTextBox();  
 rtxtNewTextBox.ID = "Txt" + (RadComboBox1.SelectedItem.Value).ToString() + RadComboBox1.SelectedItem.Text + i;  
 rtxtNewTextBox.Label = "درصد:";  
 //rtxtNewTextBox.EmptyMessage = strMappedName;  
 //rtxtNewTextBox.Text = strMappedName;  
 cell.Controls.Add(rtxtNewTextBox);  
 }  
 if (i == 2)  
 {  
 rtxtNewTextBox = new RadTextBox();  
 rtxtNewTextBox.ID = "Txt" + (RadComboBox1.SelectedItem.Value).ToString() + RadComboBox1.SelectedItem.Text + i;  
 rtxtNewTextBox.Label = "توضیحات:";  
 rtxtNewTextBox.Width = 200;  
 //rtxtNewTextBox.EmptyMessage = strMappedName;  
 //rtxtNewTextBox.Text = strMappedName;  
 cell.Controls.Add(rtxtNewTextBox);  
 }  
 
 
 row.Cells.Add(cell);  
 
 }  
 tbl.Rows.Add(row);  
 RadAjaxPanel2.Controls.Add(tbl);  
 //RadAjaxPanel2.Controls.AddAt(2, tbl);  
 
 
 }  
 }  
 
 protected void CheckBox2_CheckedChanged(object sender, EventArgs e)  
 {  
 if (CheckBox2.Checked == true)  
 {  
 //System.Web.UI.HtmlControls.HtmlTable tbl1;  
 tbl = new System.Web.UI.HtmlControls.HtmlTable();  
 //System.Web.UI.HtmlControls.HtmlTableRow row = new System.Web.UI.HtmlControls.HtmlTableRow();  
 //System.Web.UI.HtmlControls.HtmlTableCell cell = new System.Web.UI.HtmlControls.HtmlTableCell();  
 tbl.ID = "tbl1";  
 tbl.Width = "250px";  
 tbl.Border = 1;  
 row = new System.Web.UI.HtmlControls.HtmlTableRow();  
 //RadAjaxPanel2.Alert("text chnaged");  
 RadTextBox rtxtNewTextBox;  
 for (int i = 0; i < 3; ++i)  
 {  
 cell = new System.Web.UI.HtmlControls.HtmlTableCell();  
 if (i == 0)  
 {  
 rtxtNewTextBox = new RadTextBox();  
 rtxtNewTextBox.ID = "Txt" + (RadComboBox1.SelectedItem.Value).ToString() + RadComboBox1.SelectedItem.Text + i;  
 rtxtNewTextBox.Text = "check2";  
 rtxtNewTextBox.Label = ":" + RadComboBox1.SelectedItem.Text;  
 //rtxtNewTextBox.EmptyMessage = strMappedName;  
 //rtxtNewTextBox.Text = strMappedName;  
 cell.Controls.Add(rtxtNewTextBox);  
 }  
 if (i == 1)  
 {  
 rtxtNewTextBox = new RadTextBox();  
 rtxtNewTextBox.ID = "Txt" + (RadComboBox1.SelectedItem.Value).ToString() + RadComboBox1.SelectedItem.Text + i;  
 rtxtNewTextBox.Label = "درصد:";  
 //rtxtNewTextBox.EmptyMessage = strMappedName;  
 //rtxtNewTextBox.Text = strMappedName;  
 cell.Controls.Add(rtxtNewTextBox);  
 }  
 if (i == 2)  
 {  
 rtxtNewTextBox = new RadTextBox();  
 rtxtNewTextBox.ID = "Txt" + (RadComboBox1.SelectedItem.Value).ToString() + RadComboBox1.SelectedItem.Text + i;  
 rtxtNewTextBox.Label = "توضیحات:";  
 rtxtNewTextBox.Width = 200;  
 //rtxtNewTextBox.EmptyMessage = strMappedName;  
 //rtxtNewTextBox.Text = strMappedName;  
 cell.Controls.Add(rtxtNewTextBox);  
 }  
 
 
 row.Cells.Add(cell);  
 
 }  
 tbl.Rows.Add(row);  
 RadAjaxPanel2.Controls.Add(tbl);  
 //RadAjaxPanel1.Controls.AddAt(1, tbl);  
 
 
 
 
 }  
 
 
 
 } 

2 Answers, 1 is accepted

Sort by
0
Mira
Telerik team
answered on 12 Jan 2010, 07:15 AM
Hello Mohammadreza,

I followed your scenario and prepared a sample project for you.

Please take a look at it and tell whether this is desired functionality.

Regards,
Mira
the Telerik team

Instantly find answers to your questions on the new Telerik Support Portal.
Watch a video on how to optimize your support resource searches and check out more tips on the blogs.
0
Mohammadreza reiazi
Top achievements
Rank 1
answered on 19 Jan 2010, 02:57 PM

Thanks.
solve my problem. this is good.
Tags
General Discussions
Asked by
Mohammadreza reiazi
Top achievements
Rank 1
Answers by
Mira
Telerik team
Mohammadreza reiazi
Top achievements
Rank 1
Share this question
or