C# repeater table checkbox

ghano81 Messages postés 41 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 29 janvier 2013 - 26 mai 2008 à 17:31
ghano81 Messages postés 41 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 29 janvier 2013 - 27 mai 2008 à 13:21
bonjour
j'ai creer une table dynamiquement qui contient des données(de la base de donnes) jé rajoutter une colonne qui contient des checkbox
le nombre de colonnes est fixe et le nombre de lignes vari selon les enregistrements
le probleme est je peux pas controler les checkbox (si sont cochés ou pas et avoir leurs identificateurs pour une utilisation ressemble à celle d'une boite e_mail)
sur ce site m'ont proposé une solution en utilisant un repeater mais jarrive pas à relier ma table au repeater il maffiche une erreur
une source de donnéés non valide pour repeater1
et voila mon code
if

(!IsPostBack){ Table1 =

new
Table();

string constring =
ConfigurationManager.ConnectionStrings[
"AnemAPP"].ConnectionString;con =

new
SqlConnection(constring);

string cler =
"1515076";

SqlCommand cmd =
new
SqlCommand();cmd.Connection = con;

cmd.CommandText =

"select NumD,Date_prevue,Date_reelle,Resultat,Observation from Traitement_demande where CleD=" + cler +
"";
// selection de la CleDcon.Open();

rdr = cmd.ExecuteReader();

while (rdr.Read()){

TableRow tempRow =
new
TableRow();ch =

newCheckBox();ch.ID "ch" + rdr[0].ToString();ch.AutoPostBack

false;

TableCell tempCellc =
new
TableCell();tempCellc.Controls.Add(ch);

tempRow.Cells.Add(tempCellc);

 

for (
int j = 0; j < 4; j++){

TableCell tempCell =
new
TableCell();tempCell.Text = rdr[j].ToString();

tempRow.Cells.Add(tempCell);

}

 

Table1.Rows.Add(tempRow);

 

}

TableHeaderCell header =
new
TableHeaderCell();header.RowSpan = 1;

header.ColumnSpan = 5;
header.Text "la colonne et les case … cocher";header.Font.Bold
true;header.BackColor Color.Gray;header.HorizontalAlign

HorizontalAlign.Center;header.VerticalAlign =

VerticalAlign.Middle;

// Add the header to a new row.

TableRow headerRow =
new
TableRow();headerRow.Cells.Add(header);

// Add the header row to the table.Table1.Rows.AddAt(0, headerRow);

Repeater1.Controls.Add(Table1);

 

 

rdr.Close();

con.Close();

}

Repeater1.DataSource =Table1 ;

Repeater1.DataBind();

}

<

asp:Repeater
ID="Repeater1"
runat="server">

<ItemTemplate>

<%

#
DataBinder.Eval(Container.DataItem,
"Table1") %>

</ItemTemplate>

</asp:Repeater>merci davance

3 réponses

GillouXman Messages postés 561 Date d'inscription mardi 4 mars 2008 Statut Membre Dernière intervention 10 juin 2010
26 mai 2008 à 17:35
si ton repeater est static pourquoi tu te fais chier à le construire dynamiquement ?

créer le dirctement dans la vue et dans ton code behhindm tu lui passes le dataset ac les données par exemple
ghano81 Messages postés 41 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 29 janvier 2013
27 mai 2008 à 13:19
salut tout le monde
merci GillouXman pr ta reponse
d'abord c'est pas le reapeter qui est creer dynamiquement mais la table Table1.et cette table est  pleine de données
  en résumé je veux faire un lien entre ma table Table1 et mon repeater??????????
je vois pas comment le faire ?????????

merci
bonne journée
ghano81 Messages postés 41 Date d'inscription samedi 21 juillet 2007 Statut Membre Dernière intervention 29 janvier 2013
27 mai 2008 à 13:21
je vois pas comment faire surtout a ce niveau

<%

#DataBinder.Eval(Container.DataItem, "Table1") %>

d'ailleurs je comprends pas l'utilité de cette ligne
#DataBinder.Eval(Container.DataItem, "Table1") %>

good luck
Rejoignez-nous