IdentifiantMot de passe
Loading...
Mot de passe oublié ?Je m'inscris ! (gratuit)
Navigation

Inscrivez-vous gratuitement
pour pouvoir participer, suivre les réponses en temps réel, voter pour les messages, poser vos propres questions et recevoir la newsletter

ASP.NET Discussion :

ajouter par programmation un control a un itemtemplate dans un datagridview


Sujet :

ASP.NET

  1. #1
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations forums :
    Inscription : Mars 2010
    Messages : 93
    Par défaut ajouter par programmation un control a un itemtemplate dans un datagridview
    Salut,
    Je cherche un moyen d'ajouter par programmation un control a un itemtemplate dans un datagridview mais je n'ai pas trouvé.
    Je vous prie de m'apporter vos idées ?

    Merci.

  2. #2
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations forums :
    Inscription : Mars 2010
    Messages : 93
    Par défaut
    ça fait une journée que je suis planté devant ma machine sans aucuneresultat
    j'ai une grid view avec un itemtemplate qui contiens une checkbox (c'est la seule cilumn crée manuellement)
    je lie une datatable avec la gridview en sachant que autogeneratecolumn=false
    quant la page poste au serveur les checkbox disparaissent
    j'éspère que quelqu'un me metra sur le bon chemain

  3. #3
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 220
    Par défaut
    J'ai pas tout saisi, au premier affichage ta grid comporte bien ta colonne avec les checkbox et quand une action est réalisée (post back) cette colonne disparait?

  4. #4
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations forums :
    Inscription : Mars 2010
    Messages : 93
    Par défaut
    exactement
    mais ce n'est pas la column qui disparait mais les checkbox qui sont dedans

  5. #5
    Membre expérimenté
    Homme Profil pro
    Inscrit en
    Septembre 2009
    Messages
    220
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : France

    Informations forums :
    Inscription : Septembre 2009
    Messages : 220
    Par défaut
    Peux-tu poster ton code aspx et ton code cs?

  6. #6
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations forums :
    Inscription : Mars 2010
    Messages : 93
    Par défaut
    voila la gridview
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     
    <asp:GridView ID="dgvAutorisation" runat="server" Width="100%" Font-Names="Arial" 
                Font-Size="Small" CaptionAlign="Left" 
                CellPadding="8" 
                EmptyDataText="Aucun élément trouvé" 
                Font-Bold="True" Font-Italic="True" UseAccessibleHeader="False" 
                AutoGenerateSelectButton="True" AutoGenerateColumns="False">
                <EmptyDataRowStyle BackColor="#33CCFF" />
                <SelectedRowStyle BackColor="#99CCFF" />
                <HeaderStyle BackColor="Black" BorderColor="#3366FF" BorderStyle="Double" 
                    BorderWidth="2px" Font-Bold="False" Font-Names="Andalus" Font-Size="Small" 
                    ForeColor="White" />
            </asp:GridView>
    voila la methode qui charge la grid
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
     
        Private Shadows Sub Charger_DGV(ByVal dgv As GridView, ByVal dt As DataTable, ByVal IsLastColumnChecked As Boolean)
            Dim ColCount As Integer = dgv.Columns.Count
            For i As Integer = 0 To ColCount - 1 'effacer tout columns
                dgv.Columns.RemoveAt(0)
            Next
            For i As Integer = 0 To dt.Columns.Count - 1
                If dt.Columns.Item(i).DataType Is GetType(System.Boolean) Then
                    Dim gridcol As New CheckBoxField
                    gridcol.DataField = dt.Columns.Item(i).ColumnName
                    gridcol.HeaderText = dt.Columns.Item(i).ColumnName
                    dgv.Columns.Insert(i, gridcol)
                Else
                    Dim gridcol As New BoundField
                    gridcol.DataFormatString = "{0:dd/MM/yyyy}"
                    gridcol.DataField = dt.Columns.Item(i).ColumnName
                    gridcol.HeaderText = dt.Columns.Item(i).ColumnName
                    gridcol.HtmlEncode = False
                    dgv.Columns.Insert(i, gridcol)
                End If
            Next
     
            Dim tf As New TemplateField
     
            'GridViewTemplate est une classe de creation dynamique de itemtemplate
            tf.HeaderTemplate = New GridViewTemplate(ListItemType.Header, IsLastColumnChecked)
            tf.ItemTemplate = New GridViewTemplate(ListItemType.Item, IsLastColumnChecked)
            dgv.Columns.Add(tf)
     
            dgv.AutoGenerateColumns = False
            dgv.DataSource = dt
            dgv.DataBind()
        End Sub
    et voila la classe GridViewTemplate
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    21
    22
    23
    24
    25
    26
    27
    28
    29
    30
    31
    32
    33
    34
    35
    36
    37
    38
    39
    40
     
    Imports Microsoft.VisualBasic
     
    Public Class GridViewTemplate
        Implements ITemplate
        Dim templateType As ListItemType
        Dim checkedvalue As Boolean
     
        Sub New(ByVal type As ListItemType, ByVal checked As Boolean)
            templateType = type
            checkedvalue = checked
        End Sub
     
        Sub InstantiateIn(ByVal container As Control) _
           Implements ITemplate.InstantiateIn
            Dim lc As New Literal()
            Select Case templateType
                Case ListItemType.Header
                    'lc.Text = "<B>" & columnName & "</B>"
                    Dim chb As New CheckBox
                    chb.ID = "chbSelectTout"
                    chb.Text = "Select tout"
                    chb.AutoPostBack = True
                    chb.Checked = checkedvalue
                    container.Controls.Add(chb)
                Case ListItemType.Item
                    'lc.Text = "Item " & columnName
                    Dim chb As New CheckBox
                    chb.Checked = checkedvalue
                    container.Controls.Add(chb)
                Case ListItemType.EditItem
                    Dim tb As New TextBox()
                    tb.Text = ""
                    container.Controls.Add(tb)
                Case ListItemType.Footer
                    lc.Text = "<I>Footer</I>"
                    container.Controls.Add(lc)
            End Select
        End Sub
    End Class

  7. #7
    Membre actif
    Homme Profil pro
    Inscrit en
    Mars 2010
    Messages
    93
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Localisation : Maroc

    Informations forums :
    Inscription : Mars 2010
    Messages : 93
    Par défaut
    bon merci avant tout
    voila une opinion qui peut aider.

+ Répondre à la discussion
Cette discussion est résolue.

Discussions similaires

  1. Ajouter par programmation un projet au workspace Eclipse
    Par Decebal dans le forum Eclipse Java
    Réponses: 7
    Dernier message: 12/03/2012, 18h29
  2. Réponses: 2
    Dernier message: 13/03/2008, 16h33
  3. Réponses: 2
    Dernier message: 06/07/2007, 18h17
  4. Ajouter, par programme, un compte POP dans Outlook
    Par Fares BELHAOUAS dans le forum Outlook
    Réponses: 3
    Dernier message: 06/07/2007, 17h30
  5. [VB.NET]evenement sur un controle ajouté par code
    Par Golzinne dans le forum Windows Forms
    Réponses: 14
    Dernier message: 01/03/2006, 22h37

Partager

Partager
  • Envoyer la discussion sur Viadeo
  • Envoyer la discussion sur Twitter
  • Envoyer la discussion sur Google
  • Envoyer la discussion sur Facebook
  • Envoyer la discussion sur Digg
  • Envoyer la discussion sur Delicious
  • Envoyer la discussion sur MySpace
  • Envoyer la discussion sur Yahoo