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 :

Problème datagrid sous visual studio.net 2003


Sujet :

ASP.NET

  1. #1
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Problème datagrid sous visual studio.net 2003
    Alors j'ai un datagrid qui affiche mes données en fonction d'une année et d'un intervalle de lettre que j'ai précedemment saisis et après avoir cliqué sur un bouton rechercher, c'est à dire,il affiche toutes les lignes dont l'année est 2007 par exemple et le nom de la personne commence par une lettre entre A et Z! ensuite je peux aller modifier une ligne en cliquant sur un icone dans la ligne, ça m'ouvre une autre page qui me permet de modifier l'année de cette ligne.(dans ma seconde page j'ai créé un bouton retour et un bouton valider)
    Mon problème est que si je me suis trompé de ligne et que je voulais celle du dessous, je clique sur mon bouton retour (qui a le code Response.Redirect("Page1.aspx"); et là il m'affiche la première page comme si je n'avais pas selectionné d'année ni d'intervalle,c'est à dire que mon datagrid n'est plus affiché enfait j'aimerais retrouver le datagrid dans l'état où je venais de le laisser pour éviter de resaisir tous mes critère et de chercher ma ligne sur une liste allant jusqu'à 1000 lignes par moment
    Merci d'avance à tout le monde
    N'hésitez pas à me faire réexpliquer si vous ne comprenez pas des passages

  2. #2
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 49
    Points : 39
    Points
    39
    Par défaut
    Salut !

    J'avais exactement le même souci avec un formulaire de recherche. Une fois la recherche effectuée et les résultats affichés dans un gridview, je pouvais pour chaque ligne afficher un détail dans une autre page et revenir ensuite à mon formulaire de recherche. Mais la page de recherche était réinitialisée à chaque fois.

    Pour remédier à celà, je stocke les critères de recherche dans des variables de session et au page load, je teste si une recherche a bien été enregistrée. Si c'est le cas, je sélectionne les bons champs et relance la recherche automatiquement.

    Un ptit bout de code : j'exécute ce code lorsque je clique sur une ligne de mon gridview avant la redirection.
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
     
    // Recherche
            Session["cpt2recherche"] = 1;
     
            // Groupe
            Session["cpt2groupe"] = ddlGroupe.SelectedValue;
            // Compte
            Session["cpt2compte"] = txtNom.Text;
            // Ville
            Session["cpt2ville"] = txtVille.Text;
            // Archive
            Session["cpt2archive"] = setArchive();
            // Favori
            Session["cpt2favori"] = setFavori();
    Ensuite dans le page load : je teste si Session["cpt2recherche"] == 1, si c'est le cas, une recherche a été effectuée donc je la relance sinon je mets les valeurs par défaut dans le formulaire :
    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
     
    if (Convert.ToInt32(HttpContext.Current.Session["cpt2recherche"]) == 0)
            {
    // valeurs par défaut
    }
    else
    {
    // je relance la recherche avec les critères stockés en session
    ddlGroupe.SelectedValue = Convert.ToString(HttpContext.Current.Session["cpt2groupe"]);
                txtNom.Text = Convert.ToString(HttpContext.Current.Session["cpt2compte"]);
                txtVille.Text = Convert.ToString(HttpContext.Current.Session["cpt2ville"]);
     
    // etc....
     
    gridview.DataBind();
    }
    Si j'ai bien compris ton souci, ça devrait t'aider.

    a+

    Alex

  3. #3
    Nouveau Candidat au Club
    Profil pro
    Inscrit en
    Juin 2007
    Messages
    2
    Détails du profil
    Informations personnelles :
    Localisation : France

    Informations forums :
    Inscription : Juin 2007
    Messages : 2
    Points : 1
    Points
    1
    Par défaut Merci
    Merci je me suis inspiré de ce que tu m'as dit, en faisant Retour je retombe sur ma première page avec mon datagrid affiché avec tous les critères mais on voit la 1ere ligne même si on avait cliqué sur la 1500eme, et je voudrais que lorsq'on reviens sur ce datagrid, il soit comme on l'a quitté (c'est à dire qu'on puisse voir la 1500eme ligne sur laquelle on a cliqué tout a l'heure)
    Encore merci alexandre

  4. #4
    Nouveau membre du Club
    Profil pro
    Étudiant
    Inscrit en
    Mars 2007
    Messages
    49
    Détails du profil
    Informations personnelles :
    Âge : 39
    Localisation : France, Rhône (Rhône Alpes)

    Informations professionnelles :
    Activité : Étudiant

    Informations forums :
    Inscription : Mars 2007
    Messages : 49
    Points : 39
    Points
    39
    Par défaut
    Si tu utilises une pagination dans ton datagrid, tu peux à mon avis récupérer l'index de la page sur laquelle tu te trouvais.

    Par exemple, dans mon gridview j'ai fait :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    Session["numeropage"] = gridview.PageIndex;
    Sinon, tu peux récupérer l'index de la ligne sur laquelle tu as cliqué. Tu pourras ensuite sélectionner la bonne ligne de la manière suivante (pas très sûr que cette méthode donne le résultat voulu) :
    Code : Sélectionner tout - Visualiser dans une fenêtre à part
    1
    2
     
    gvComptes.SelectedRow = Session["ligneselect"];

Discussions similaires

  1. [Visual Studio .Net 2003]Problème d'édition de liens
    Par Mindiell dans le forum Visual C++
    Réponses: 10
    Dernier message: 25/05/2007, 23h43
  2. Réponses: 3
    Dernier message: 03/10/2005, 10h01
  3. Service NT (Visual studio .Net 2003)
    Par hip_zip dans le forum MFC
    Réponses: 1
    Dernier message: 27/07/2005, 13h06
  4. probleme de link avec visual studio .net 2003
    Par kamal101 dans le forum MFC
    Réponses: 9
    Dernier message: 28/03/2005, 21h44
  5. [C#] Probleme de visual studio.net 2003
    Par gandalfar dans le forum Windows Forms
    Réponses: 6
    Dernier message: 07/01/2005, 14h53

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