Question

Je construis un site Web ASP.NET fortement basé sur Crud et je suis arrivé à la phase du projet où j'essaie de créer une page Web de recherche qui montre à l'utilisateur différents sous-ensembles d'un certain tableau important en fonction des paramètres dans lesquels ils entrent comme dates et différents champs de texte.

Je ne peux pas utiliser une instruction SQL fixe, car selon qu'ils recherchent la date ou par autre chose, le SQL serait différent, donc j'ai généré une liste de résultats à l'aide d'un contrôle Web de table qui démarre invisible et ensuite rempli et défini sur visible une fois que l'utilisateur identifie une recherche qu'il souhaite faire. J'ai utilisé un contrôle de table car il est facile à créer et à modifier dans le code derrière, et j'ai pu passer les appels nécessaires à la base de données et remplir ce tableau selon les besoins.

Cependant, la deuxième chose dont j'ai besoin avec cette page de recherche est la possibilité de permettre à l'utilisateur de sélectionner un enregistrement dans les résultats, puis d'aller le modifier en utilisant le reste des pages basées sur Crud sur le site. Pour ce faire, j'ai créé des boutons ASP: dans la table et leur ai donné tous les ID différents et le même gestionnaire d'événements. Mais depuis que j'ai créé les boutons dynamiquement, il semble que l'événement disparaisse sur le rappel et que mon schéma échoue, donc je regarde comment procéder.

Mon code actuel pour les événements ressemble:

 tempcell = new TableCell();
 Button tempbutton = new Button();
 tempbutton.Text = "Go";
 tempbutton.ID = "gobutton" + rowN;
 tempbutton.Visible = true;
 tempbutton.Click += new EventHandler(tempbutton_Click);
 tempcell.Controls.Add(tempbutton);
 temprow.Cells.Add(tempcell);

Mon tableau de résultats est déclaré comme ceci:

<asp:Table ID="ResultTable" visible="false" runat="server" 
GridLines="Both" CellSpacing="8">
</asp:Table>

J'aimerais pouvoir identifier quel enregistrement l'utilisateur sélectionné, afin que je puisse envoyer ces informations sur une autre page. Et bien sûr, j'ai encore besoin de pouvoir générer des résultats pour plusieurs critères de recherche différents. Actuellement, j'ai des recherches basées sur des dattes, des modèles et du code qui conduisent à différentes procédures stockées et différents paramètres en fonction de ce que l'utilisateur a saisi.

Des suggestions à ce sujet? Il semble que les grilles de données et les répéteurs nécessitent à l'avance des instructions SQL pour fonctionner correctement, donc je ne sais pas comment les utiliser, mais si je pouvais, l'approche de commande d'élément fonctionnerait avec les boutons.

Était-ce utile?

La solution

Votre événement se connectera avec succès si le bouton est recréé dans l'événement de chargement de page.

Sinon, utilisez un GridView. C'est la solution parfaite pour un simple crud, et vous pouvez le contrôler autant que vous en avez besoin.

Licencié sous: CC-BY-SA avec attribution
Non affilié à StackOverflow
scroll top