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

VB.NET Discussion :

DatagridView Text Box


Sujet :

VB.NET

  1. #1
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2009
    Messages : 66
    Par défaut DatagridView Text Box
    Bonjour a tous,

    Alors voila j'ai un problème avec un ajout d'information dans un Datagridview, je copie un fichier tout les xx secondes et je voudrais garder le temps de copie dans mon datagridview pour chaque copie, mais au moment de transférer dans mon datagrid qui récupère déjà l'information dans un label une erreur parvient

    "La référence d'objet n'est pas définie à une instance d'un objet."

    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
    private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
    Dim Start, Arrived As DateTime
            Dim SpentTime As TimeSpan
            Dim DatagridView1 As New DataGridView
     
            ' prendre l'heure
            Start = Now
            'Fonction CopyFile
            gFileTransfer.DoCopy()
     
            '' prendre l'heure
            Arrived = Now
            '' Calculer de delta
            SpentTime = Arrived - Start
     
            '' Sauvegarder la valeur du delta Quelque part
     
            Label_TranfertTime.Text = SpentTime.ToString
            Label_TranfertTime.Text = Me.DataGridView1.CurrentRow.Cells(0).Value
            MsgBox("Copy Done")
    J'ai l'impression que c'est tout bête comme erreur mais j'ai pas mal cherché et rien ...
    Si quelqu'un a une idée ou quelque chose pour m'éclairer...

    Merci d'avance

    Cordialement Carmel_O

  2. #2
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    1. Pourquoi tu crées un nouveau DatagridView (Dim DatagridView1 As New DatagridView1) ? En plus tu ne l'utilises même pas, puisque tu manipules ensuite Me.DataGridView1...
    2. Tu enregistres le temps dans un textbox, et ensuite tu écrases le contenu du textbox avec la valeur qui vient du DataGridView : ça n'a pas de sens... C'est le contraire qu'il faut faire, copier la valeur de la textbox vers le DataGridView. Donc inverser le sens de l'égalité
    3. Pour la NullReferenceException, je pense que c'est Me.DataGridView.CurrentRow qui est null (Nothing), autrement dit aucune ligne n'est sélectionnée. De toutes façons, il me semble qu'il vaudrait mieux mettre l'info dans une ligne spécifique, plutôt que dans la ligne sélectionnée... non ?

  3. #3
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2009
    Messages : 66
    Par défaut
    Pour tes 2 premiers points c'est vrai que c'est débile ce que j'ai fait on va dire la fatigue

    Pour la 3 je vois ce que tu veux dire mais mais comment la realiser ?

  4. #4
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Carmel_O Voir le message
    Pour la 3 je vois ce que tu veux dire mais mais comment la realiser ?
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    Me.DataGridView1(i, 0).Value = SpentTime.ToString
    i étant l'index de la ligne où tu veux écrire

  5. #5
    Membre confirmé
    Profil pro
    Étudiant
    Inscrit en
    Février 2009
    Messages
    66
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Février 2009
    Messages : 66
    Par défaut
    Merci d'avoir répondu aussi vite pour mon problème mais j'ai changé totalement et je suis passé par un datatable et j'ai récupéré les infos dans le datagridview

    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
    ''' <summary>
        ''' Log datatable structure initialization.
        ''' </summary>
        ''' <remarks></remarks>
    Private Sub InitLog()
            Dim myCol As DataColumn
     
            gLog = New DataTable("Log")
            'creating a table named Log
     
            myCol = New DataColumn("TimeStamp")
            With myCol
                .DataType = System.Type.GetType("System.DateTime")
                .DefaultValue = Now
                .Caption = "TimeStamp"
                gLog.Columns.Add(myCol)
            End With
     
            myCol = New DataColumn("TransferDelay")
            With myCol
                .DataType = System.Type.GetType("System.String")
                .Caption = "Transfer Delay"
                gLog.Columns.Add(myCol)
            End With
     
        End Sub
     
    'ensuite dans mon formload j'appelle la méthode
            InitLog()
            DataGridView_Log.DataSource = gLog
     
    'Et action lors de mon tick
    Private Sub Timer1_Tick(ByVal sender As System.Object, ByVal e As System.EventArgs) Handles Timer1.Tick
            Dim myRow As DataRow
            Dim Stopwatch As New System.Diagnostics.Stopwatch
     
            ' Start the chrono
            Stopwatch.Start()
     
            ' Fonction CopyFile
            gFileTransfer.DoCopy()
     
            ' Stop the chrono
            Stopwatch.Stop()
     
            ' Sauvegarder la valeur du delta qqpart
            myRow = gLog.NewRow
            myRow("TransferDelay") = (Stopwatch.ElapsedMilliseconds * 1000).ToString
            gLog.Rows.Add(myRow)
    End sub
    Merci encore tomlev

  6. #6
    Rédacteur/Modérateur


    Homme Profil pro
    Développeur .NET
    Inscrit en
    Février 2004
    Messages
    19 875
    Détails du profil
    Informations personnelles :
    Sexe : Homme
    Âge : 43
    Localisation : France, Paris (Île de France)

    Informations professionnelles :
    Activité : Développeur .NET
    Secteur : High Tech - Éditeur de logiciels

    Informations forums :
    Inscription : Février 2004
    Messages : 19 875
    Par défaut
    Citation Envoyé par Carmel_O Voir le message
    j'ai changé totalement et je suis passé par un datatable
    Bon choix

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

Discussions similaires

  1. rendre visible ou invisible une texte box
    Par kuhnden dans le forum Access
    Réponses: 13
    Dernier message: 01/11/2005, 18h59
  2. [c#][Pocket PC]Saisie dans text box
    Par maredami dans le forum Windows Forms
    Réponses: 2
    Dernier message: 01/11/2005, 11h24
  3. Raffraichissement d'une text box
    Par decour dans le forum IHM
    Réponses: 5
    Dernier message: 13/10/2005, 12h31
  4. j'ai pas trouvé le db text box ou DBedit en WinForm??
    Par jean_Carlo dans le forum Delphi .NET
    Réponses: 1
    Dernier message: 19/09/2005, 23h02
  5. Réponses: 4
    Dernier message: 23/06/2004, 14h30

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