2017-07-28 3 views
0

erstellt wird, habe ich Kontrollkästchen, die dynamisch in page_load -Ereignis erstellt werden und es in Panel setzen.Wie checked checkbox Wert, der dynamisch in Button-Klick-Ereignis

foreach (DataRow dr in column_ds.Rows) 
     { 
      column_checkbox = new CheckBox(); 
      column_checkbox.Text = (string)dr["COLUMN_NAME"]; 
      columnpanel1.Controls.Add(column_checkbox); 
     } 

jetzt möchte ich die Kontrollkästchen in btn_click-Ereignis aktiviert. irgendwelche Ideen? ich versuchte,

columnpanel1.FindControl("column_checkbox"); 

und

CheckBox cb=(CheckBox)FindControl("column_checkbox"); 
     if (column_checkbox.Checked) { } 
     { 
      string name = column_checkbox.Text; 
     } 
+0

verwenden Zeichenfolge name = Convert.ToString (column_checkbox.Checked); – Koderzzzz

+0

was ist mit Panel? – user7415073

Antwort

0

Vielen Dank für Ihre Kommentare und Antworten.

Ich habe endlich durch,

foreach (Control cb in columnpanel1.Controls) 
     { 
      if (cb is CheckBox) 
      { 
       CheckBox c = (CheckBox)cb; 
       if (c.Checked) 
       { 
        string s = c.Text; 
       } 
      } 
     } 
0

auf Click-Ereignis-Taste können Sie unter Logik implementieren.

protected void btn_click(object sender, EventArgs e) 
{ 
    foreach(var row in columnpanel1.Rows) 
    { 
     var tempchkBx= row.Controls[0] as CheckBox; 
     if(tempchkBx.IsChecked) 
     { 
     //write your code 
     } 
    } 
} 
0

sollten Sie dies tun

foreach (DataRow dr in column_ds.Rows) 
     { 
      column_checkbox = new CheckBox(); 
      column_checkbox.Text = (string)dr["COLUMN_NAME"]; 
      column_checkbox.ID = (string)dr["ID"] 
      columnpanel1.Controls.Add(column_checkbox); 
     } 

als Sie die Kontrolle mit ID finden.

0

Sie können dies auch in LINQ:

var boxes = columnpanel1.Controls.OfType<CheckBox>().Where(c=>c.Checked).ToList(); 

foreach(var chk in boxes) 
     { 
      string s = chk.Text; 
     } 
0

Falls dafür arbeiten Sie einen Event-Handler hinzufügen müssen, um dynamisch hinzugefügt Kontrollen in Ihrem Fall

checkbox = new CheckBox(); 
phChecklist.Controls.Add(checkbox); 
checkbox.CheckedChanged += checkBox_CheckedChanged; 

und dann, was Sie in der Methode tun müssen

private void CheckBox_CheckedChanged(object sender, System.EventArgs e) 
{ 
    ... 
} 
Verwandte Themen