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 :

[vb.net] Declarer un array de session ?


Sujet :

ASP.NET

  1. #21
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par défaut
    Pourquoi tu t'obstine à vouloir mettre un control textbox dans ton arraylist (ou dans ton objet) !!! juste la valeur, c'est tout !!

  2. #22
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Par défaut
    désolé désolé ^^

    bon la ca marche a peu pres, je nai pas encore fait la recuperation mais je met juste mon code, car il peux peut etre servir

    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
    41
    42
    43
    44
    45
    46
    47
    48
    49
    50
    51
    52
    53
    54
    55
    56
    public class MonObjet
     
        Public champ_label2 As String
        Public champ_textbox2 As String
     
        Public ReadOnly Property champ_label As String
             Get
                Return champ_label2
            End Get
        End Property
     
        Public ReadOnly Property champ_textbox As String
             Get
                Return champ_textbox2
            End Get
        End Property
     
        Public Sub New(newchamp_label2 As String, newchamp_textbox2 As String)
            Me.champ_label2 = newchamp_label2
            Me.champ_textbox2 = newchamp_textbox2
        End Sub
     
    end class
     
    ........
     
    function x
     
    dim monArray as new ArrayList()
     
             for i=1 to ds.tables("datestest").Columns.Count-1
     
                 monArray.add(New monObjet(ds.tables("datestest").Columns(i).ColumnName, ""))
     
             next i
     
             Repeater1.DataSource = monArray
             Repeater1.DataBind()
     
    end function
    .
    .
    .
    </script>
    <repeater ...>
     <ItemTemplate>
                <tr>
                    <td>
                        <asp:Label id="champ_label" text='<%# DataBinder.Eval(Container.DataItem, "champ_label") %>' runat="server" />
                    </td>
                    <td>
                        <asp:textbox id="champ_textbox" Text='<%# DataBinder.Eval(Container.DataItem, "champ_textbox") %>' Runat="server" />
                    </td>
                </tr>
    </ItemTemplate>
    </repeater>

    Merci guitoux
    je te tien au courant

  3. #23
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Par défaut
    ok pour la recuperation , je procede comme ci dessous:

    Dim RepeaterItem As RepeaterItem
    Dim monTxtResultat As TextBox

    for each RepeaterItem in repeater1.Items

    monTxtResultat = Me.FindControl("champ_textbox")
    Response.Write(monTxtResultat.Text)

    Next

    neanmoins, j'obtien encore et toujours une erreur de
    Object reference not set to an instance of an object

    saurais tu pourkoi ?

  4. #24
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par défaut
    essai plutot

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    for each RepeaterItem in repeater1.Items
     
    monTxtResultat = RepeaterItem .FindControl("champ_textbox")
    Response.Write(monTxtResultat.Text)
     
    Next

  5. #25
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Par défaut
    non jai toujours un probleme d'objet non reconnu
    je vais faire quelques tests.

    sinon j'aimerai connaitre le type des données présente dans ma table , pour pouvoir agir sur ce que l'utilisateur rentre dans les textbox.
    jai utilisé la fonction :

    ds.tables("datestest").Columns(ds.tables("datestest").Columns(i).ColumnName).DataType.ToString()

    avec ds mon dataset,
    table la table lié a mon dataset

    il me sors comme reponse :
    des System.String et des system.int32
    le probleme, c'est que dans ma table il y a un champ de type date, et il ne semble pas en tenir compte. y'a til une autre maniere dacceder au type de champ de sa table ?

  6. #26
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Par défaut
    ok javance javance ... ou pas

    pour eviter les problemes d'instanciation, jai rajouter les quelques lignes :

    Dim RepeaterItem As new RepeaterItem

    for each RepeaterItem in repeater1.Items

    dim monTxtResultat as new textbox
    montxtresultat.text = "maison"
    monTxtResultat = RepeaterItem .FindControl("champ_textbox")
    Response.Write(monTxtResultat.Text)

    Next

    bon j'obtiens une nouvelle erreur, qui explique peut etre pourkoi cela ne veut pas marcher. Je n'ai pas l'impression qu'il connait bien RepeaterItem et les élement de mon repeater. Le message est le suivant :

    Argument not specified for parameter 'itemIndex' of 'Public Sub New(itemIndex As Integer, itemType As System.Web.UI.WebControls.ListItemType)'.

    l'erreur est typiquement vb.net ...

  7. #27
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par défaut
    ou est placé ce code ? dans une méthode particulière ? si oui, merci d'afficher tout le code

    PS : merci aussi de mettre la balise autour du code, c plus lisible

  8. #28
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Par défaut
    bonjour guitoux,

    oui ce code est placé dans une méthode, qui est appelée lors de l'appuie sur un bouton

    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
     
     
    sub update(sender As Object, e As System.EventArgs)
     
            ...
     
              Dim RepeaterItem As RepeaterItem
              Dim monTxtResultat As TextBox
     
               For Each RepeaterItem In repeater1.Items
     
                monTxtResultat = ctype(Me.FindControl("txtResultat"),textbox)
               'Response.Write(monTxtResultat.Text)
     
               Next
     
            ...
     
     end sub
    et dans un autre sub j'ai la mise en place des élement du repeater :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
     sub affiche_fiche(sender As Object, e As System.Web.UI.ImageClickEventArgs)
     
             for i=0 to ds.tables("datestest").Columns.Count-1
                response.write(ds.tables("datestest").Columns(ds.tables("datestest").Columns(i).ColumnName).DataType.ToString())
                monArray.add(New monObjet(ds.tables("datestest").Columns(i).ColumnName, ""))
     
             next i
     
            Repeater1.DataSource = monArray
            Repeater1.DataBind()
     
     
         end sub
    enfin , je declate mon repeater dans l'aspx :

    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    <asp:Repeater id="Repeater1" runat="server" EnableViewState="FALSE">
     <ItemTemplate>
                    <tr bgcolor="#e8e8e8">
                        <td>
                            <asp:Label id="champ_lab" text='<%# DataBinder.Eval(Container.DataItem, "champ_label") %>' runat="server" /> 
                        </td>
                        <td>
                            <asp:textbox id="champ_text" Text='<%# DataBinder.Eval(Container.DataItem, "champ_textbox") %>' Runat="server" />
                        </td>
                    </tr>
                </ItemTemplate>
    </asp:Repeater>
    j'ai vraiment besoin de ton aide car la je bloque vriament

  9. #29
    Membre Expert Avatar de guitoux1
    Profil pro
    Inscrit en
    Juin 2006
    Messages
    1 011
    Détails du profil
    Informations personnelles :
    Âge : 45
    Localisation : France, Loire Atlantique (Pays de la Loire)

    Informations forums :
    Inscription : Juin 2006
    Messages : 1 011
    Par défaut
    Moi je ferais (attention, je connais pas VB.Net, c'es approximatif)
    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
     
    sub update(sender As Object, e As System.EventArgs)
     
            ...
     
              Dim repeat As RepeaterItem
              Dim monTxtResultat As TextBox
     
               For Each repeat In repeater1.Items
     
                monTxtResultat = ctyperepeat.FindControl("champ_text"),textbox)
               'Response.Write(monTxtResultat.Text)
     
               Next
     
            ...
     
     end sub

  10. #30
    Membre confirmé
    Profil pro
    Inscrit en
    Septembre 2005
    Messages
    121
    Détails du profil
    Informations personnelles :
    Âge : 44
    Localisation : France, Rhône (Rhône Alpes)

    Informations forums :
    Inscription : Septembre 2005
    Messages : 121
    Par défaut
    MerrrrrrCiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiiii
    c'est cela !!!! . Alors je n'ai pas saisie pourquoi le me ne fonctionnait pas, néanmoins, je remet la structure correcte ( il y avait une ou 2 faute )

    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
    sub update(sender As Object, e As System.EventArgs)
     
            ...
     
              Dim repeat As RepeaterItem
              Dim monTxtResultat As TextBox
     
               For Each repeat In repeater1.Items
     
                monTxtResultat = repeat.FindControl("champ_text")
                Response.Write(monTxtResultat.Text)
     
               Next
     
            ...
     
     end sub
    Encore merci guitoux, je ne saurais pas ce que j'aurais fait sans toi .

+ Répondre à la discussion
Cette discussion est résolue.
Page 2 sur 2 PremièrePremière 12

Discussions similaires

  1. Réponses: 1
    Dernier message: 21/03/2007, 20h44
  2. [VB.net] Declaration en globale
    Par Seth77 dans le forum Windows Forms
    Réponses: 5
    Dernier message: 13/02/2007, 11h34
  3. [VB.net] Declaration variable dans une boucle for
    Par nico10gbb dans le forum Windows Forms
    Réponses: 4
    Dernier message: 10/05/2006, 11h45
  4. [C++.NET] Declarer un objet datatable
    Par raboin dans le forum VC++ .NET
    Réponses: 5
    Dernier message: 24/04/2006, 17h17
  5. [VB.NET] Declaration problématique dans une classe
    Par joefou dans le forum VB.NET
    Réponses: 8
    Dernier message: 01/03/2006, 11h38

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