CheckBox dans le GridView

cs_rahhou Messages postés 3 Date d'inscription vendredi 5 septembre 2008 Statut Membre Dernière intervention 9 septembre 2008 - 9 sept. 2008 à 12:11
zarzislyon69 Messages postés 10 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 25 janvier 2010 - 9 déc. 2009 à 10:44
Bonjour à tous;

je développe une webpart avec du C# (  l'environnement MOSS 2007) qui doit m'afficher un GridView et au
début dans chaque ligne un CheckBox, qui une fois coché la ligne sera
supprimé !

voici mon code:

 protected override void Render(HtmlTextWriter writer)
        {
            // creation du gridview et de sa source de données

            GridView gv = new GridView();
            DataTable dt = new DataTable();

            // ajoute des colonnes
           
dt.Columns.Add("Suppression");
            dt.Columns.Add("User Name");
            dt.Columns.Add("Identifiant");
            dt.Columns.Add("Signature");
            dt.Columns.Add("Country");
            dt.Columns.Add("Category");
            dt.Columns.Add("Confidential");
            dt.Columns.Add("Reader");
            dt.Columns.Add("Contributor");

            // création d'une nouvelle ligne

            //DataRow dr = dt.NewRow();

            //dt.Rows.Add(dr);

            // ajout de la nouvelle ligne
            gv.DataSource = dt;
            gv.DataBind();

            // on récupère la source
            DataTable dtadd = (DataTable)gv.DataSource;

            // ajout de la source de donnée dans le gridview
            gv.DataSource = dt;
           
gv.DataBind();

            // Table des critères
            SPSite site = new SPSite("http://frdpgpiis19:10000");
            SPWeb myweb = site.OpenWeb();
            SPList listprofil = myweb.Lists["User access rights"];
            foreach (SPListItem itemsprofil in listprofil.Items)
            {
                if (itemsprofil["User"].ToString() == FocusUsers.SelectedItem.ToString())
               
{
                    // création d'une nouvelle ligne
                    DataRow row = dt.NewRow();

                    CheckBox MonCheckBox  = new CheckBox();

                    row["Suppression"] = MonCheckBox  ;
                    row["User Name"] =
FocusUsers.SelectedItem.ToString();
                    row["Identifiant"] = itemsprofil["Identifiant"].ToString();
                    row["Signature"] = itemsprofil["Signature"].ToString();
                    row["Country"] = itemsprofil["Geographic perimeter"].ToString();
                    row["Category"] = itemsprofil["Category"].ToString();
                    row["Confidential"] =
itemsprofil["Confidantiel"].ToString();
                    row["Reader"] = itemsprofil["Reader"].ToString();
                    row["Contributor"] = itemsprofil["Contributor"].ToString();

                    dt.Rows.Add(row);

                    //ajout de la nouvelle ligne
                    gv.DataSource = dt;
                   
gv.DataBind();

                    //on récupère la source
                    // DataTable dtadd = (DataTable)gv.DataSource;

                    //  ajout de la source de donnée dans le gridview
                    // gv.DataSource = dt;
                    // gv.DataBind();
                }

le pb est que MonChecBox ne s'affiche pas dans la celulle "Suppression" .

qq'1 à une solution svp!

merci.

Bonne journée.

2 réponses

cs_coq Messages postés 6349 Date d'inscription samedi 1 juin 2002 Statut Membre Dernière intervention 2 août 2014 101
15 sept. 2008 à 11:54
Salut,

La DataTable contient des données, elle n'a strictement rien à voir avec la couche de présentation. Lui fournir une instance de CheckBox ne sert à rien (ça s'execute sans exception d'ailleurs ? o_O).
Par contre définir la colonne Suppression de la DataTable comme étant de type booléen (voir les autres surcharges de la méthode Add) devrait répondre au problème, si le GridView génère ses colonnes automatiquement.
Sinon il faut aussi jouer avec les définitions de colonnes du contrôle.

/*
coq
MVP Visual C#
CoqBlog
*/
0
zarzislyon69 Messages postés 10 Date d'inscription mardi 6 octobre 2009 Statut Membre Dernière intervention 25 janvier 2010
9 déc. 2009 à 10:44
Bonjour Coq,

pourrai-je avoir plus de précision ?

Je fais du dèveloppement mobile et je n'arrive pas à ajouter un colonne checkbox dans mon dataTable ou dans mon dataGrid.

Merci par avance.

Cdlt,
RZR
0
Rejoignez-nous