begin process at 2012 02 14 09:16:09
  Trouver un code source :
 
dans
 
Accueil > Forum > 

ASP.NET

 > 

WebForms

 > 

PostBack

 > 

datasource et databind.


Derniers messages déposésPoser une question dans le forum ou lancer une discussion

datasource et databind.

lundi 7 août 2006 à 16:57:11 | datasource et databind.

theoorleans45

Je crois que je n'ai jamais rien trouvé d'aussi "prise de tête" que le postback avec les datasource et databind....

Voilà mon problème.
Dans ma page, j'ai 3 panels, simulant 3 onglets. On passe d'un panel à l'autre en cliquant sur un bouton "next" situé sur les 3 panels.
Ce bouton se charge d'incrémenter une property (1, 2 ou 3 pour savoir à tout moment dans quel onglet on est).

Chacun des panels regroupe des controles web, dont des datagrids et un select HTML paramétré via le code behind (datasource et databind).
Arrivé sur le 2e onglet, il devient impossible de tester "ispostback" puisqu'en fait, étant toujours sur la même page, mais sur un onglet différent du premier, cette variable vaut toujours vrai. Du coup, pour les objets de type datagrid etc, ça devient la galère.

J'avais trouvé une solution en mettant le code d'initialisation (des éléments du panel suivant) dans le bouton "next" qui passe au panel suivant. De façon à ce qu'il ne soit exécuté qu'une fois.

En gros, dans mon Panel3, j'ai mon "select" qui contient des infos (couple value-text) à partir d'un datasource. Le datasource et databind sont exécutés dans le code du bouton "next" du panel2.
Sur mon Panel3, j'ai aussi un bouton "ajouter" qui ajoute en javascript une valeur dans le select. Un second bouton du panel3 "enregistrer" se charge de parcourir ce select et de faire des ajouts en base de données. Or, quand je clique dessus, il me trouve QUE les éléments de départs, et réaffiche de nouveau mon select initial (sans ceux que j'ai ajouté par la suite en javascript).

Je sais pas comment faire. J'ai besoin d'un gros coup de main parce que c'est bloquant pour mon projet. Je suis prêt à vous expliquer plus en détail encore si ça manque de clarté, mais aidez-moi !!!
lundi 7 août 2006 à 23:39:18 | Re : datasource et databind.

jesusonline

Membre Club Administrateur CodeS-SourceS

Bonsoir,

Ce que tu décris est totalement normal, rajouter les items sur le client ne va pas automatiquement les rajouter sur le serveur. Je ne pense pas que tes onglets soient le problème. Essaye d'abord de rajouter tes items dans une page classique puis fais le dans tes onglets


Cyril - MVS - MCP
mardi 8 août 2006 à 10:09:37 | Re : datasource et databind.

theoorleans45

Donc, si j'ai bien compris, l'attribut runat="server" que j'ai mis dans dans ma balise Select, me permet d'accéder à l'objet, mais est incapable de parcourir son contenu, inséré à l'aide de javascript ?

 

Bon tant pis. Va falloir que je trouve un autre moyen...

J'ai un autre soucis, plus ou moins lié à tout ça : je parcours à un moment, dans un de mes nombreux panels de ma page, une active directory pour récupérer un peu plus de 1100 personnes, que j'insère (à l'aide d'un datasource et databind) dans un de mes selects.

Pour être concret, sur mon "panel 5", j'ai un bouton pour passer au "panel 6". Sur mon "panel 6", j'ai un select avec toutes les personnes de l'AD + un bouton pour passer au "panel 7". Sur mon "panel 7", j'ai un datagrid classique.

En gros, quand je clique sur le bouton du "panel 5" (chargé de remplir le select et d'afficher le panel suivant), ça réfléchit un petit moment avant de m'afficher mon select rempli de mes 1100 personnes (donc normal puisque la lecture de l'AD est assez longue). Ce qui l'est moins, c'est qu'un clic sur le bouton du "panel 6" (et qui doit normalement me diriger vers le "panel 7" où y a mon datagrid) rame ! Avant d'aller dans le page_load, le navigateur réfléchit comme s'il re-remplissait encore mon select (je sais pas trop ce qu'il fait en fait). Après quelques secondes, j'arrive bien au "panel 7", mais toutes mes intéractions sur le datagrid par exemple sont précédées d'une durée assez longue avant la visualisation du résultat à l'écran, comme si quelque part, il lisait encore mon AD ou je-ne-sais-quoi qui le fait réfléchir. Je n'arrive pas à passer outre cette latence de chargement qui, selon moi, n'a pas lieu d'être à ce moment là.

J'ai testé en virant l'initialisation de mon select, et toutes mes intéractions à partir du "panel 7" sont quasi immédiate. Je comprends pas, vu que l'initialisation du select n'est faite qu'une fois (selon le débuggueur).

Un coup de main ?

 

mardi 8 août 2006 à 10:19:16 | Re : datasource et databind.

jesusonline

Membre Club Administrateur CodeS-SourceS
La je ne peux pas dire grand chose, regarde par ou passe ton code en te mettant en mode pas à pas :-/ Mais d'aprés ce que j'ai compris tu aurais pu utiliser le controle Wizard d'asp.net 2 je pense qu'il t'aurais grandement simplifier la tache ... :-)


Cyril - MVS - MCP
mardi 8 août 2006 à 10:24:21 | Re : datasource et databind.

theoorleans45

Réponse acceptée !
controle wizard ? Heu, j'ai commencé .Net tout seul y a quelques mois, et heu.... c'est quoi ?

Sinon, j'ai trouvé pourquoi ça ralentissait. Je stockais mes infos issues de l'AD dans une property de type datatable et elle me servait à remplir mon select.

En virant la property, je n'ai plus de latence de chargement...(mais je vais être obligé de relire l'AD pour récupérer les informations que je comptais prendre dans ma property pfff).


Cette discussion est classée dans : bouton, select, datasource, databind, panels


Répondre à ce message

Sujets en rapport avec ce message

Champ SELECT sans bouton "Executer" [ par zincounette ] Bonjour,Je voulais savoir comment faire pour que ma page prenne en compte le bontou SELECT sans que je mette un bouton "Executer". En fait, je voudrai Modifier aspect bouton select [ par knutboss ] Je souhaite personnaliser l'aspect d'un bouton select dans un formulaire (bordure,fond,et surtout le bouton du menu déroulant )Merci de vos conseils Comment récupérer la ligne d'une GridView sans bouton Select? [ par obitskater ] Bonjour à tous,Voilà, dans ma webForm j'ai une gridview, avec pour chaque ligne un HoverMenu AjaxToolkit qui contient des liens pour ouvrir des popups bind d'un bouton select dans un gridview [ par hudon77 ] Bonjour  à tous!Quand on genere le bouton select de chaque row d'un gridview. Est-ce posssible de lui binder un champs ou alors on est pris avec le te CSS: Coloriser le bouton d'un SELECT [ par shaiulud ] Bonjour,   Ce n'ai pas de la prog à proprement parler mais ASP est un langage web alors...   Je dois dans le cadre d'une charte styliser mes pages.    Select, remplir un champs via la value, mais... [ par Jackboy ] Bonjour !J'ai un select et les options ce remplissent dynamiquement selon ma bd. Lors d'un choix dans le select, le champ Infos_Concept se remplis et trouver un bouton [ par tmcuh ] bonjour j'ai déjà vu qu'il y avait moyen de trouver un controle sur une feuille. Je ne retrouve plus la fonction :( ... en fait je veux à partir d'un LinkButton par défaut [ par stlaural ] Bonjours,Je travail présentement sur une application en ASP.NET. Dans une de mes Web Form je place un linkbutton comme voici :  &lt Filtrer des documents à partir d'un champ [ par ToXXic_57 ] Bonjour,Je suis entrain de développer une Web Part qui afficherait les dossiers en cours d'un utilisateur sélectionné dans une liste déroulante.La pre


Nos sponsors


Sondage...

CalendriCode

Février 2012
LMMJVSD
  12345
6789101112
13141516171819
20212223242526
272829    

Consulter la suite du CalendriCode

 
Développement réalisé par Nicolas SOREL (Nix) avec l'aide de : Cyril DURAND et Emmanuel (EBArtSoft), Merci à Vincent pour ses précieux conseils.
CodeS-SourceS.com© Toute reproduction même partielle est interdite sauf accord écrit du Webmaster
CodeS-SourceS.com© est une marque déposée tous droits réservés

Google Coop CodeS-SourceS Google Coop CodeS-SourceS
Temps d'éxécution de la page : 1,061 sec (3)

Nous contacter | Annoncer sur CodeS-SourceS | Mentions légales