2009-04-10 13 views
0

J'ai un contrôle utilisateur qui affiche les résultats d'une base de données dans un gridview. La page contenant reçoit des valeurs de chaîne de requête et les transmet au contrôle utilisateur à charger.User Control population de variable demande contenant la page

A partir de la page contenant, quelle est la meilleure façon de charger et d'afficher le contrôle de l'utilisateur? À l'heure actuelle, je fais ce qui suit:

  1. contenant Page_Load: Obtenir des valeurs queryString
  2. contenant Page_Load: Instanciez User Control
  3. contenant Page_Load: définir les propriétés de contrôle utilisateur
  4. contenant Page_Load: Ajouter un contrôle utilisateur à la page

Je ne suis pas sûr quel événement dans le contrôle de l'utilisateur à utiliser pour frapper la base de données et remplir le contrôle; devrais-je créer une méthode "Remplir ce contrôle" sur le contrôle utilisateur et l'appeler à partir de la page Containing? Ou utilisez une routine Page_Load dans le contrôle utilisateur?

Répondre

1

Si votre page ne fait rien pour aseptiser ou traiter les variables, est-il une raison que le contrôle de l'utilisateur ne peut pas simplement saisir les valeurs lui-même? Si vous avez des raisons de désinfecter les données, vous pouvez charger l'événement Load des contrôles, mais dans ce cas, puisque la page semble piloter la fonctionnalité du contrôle utilisateur, vous pouvez bénéficier d'un "SetupControl" ou une autre méthode que vous pouvez appeler après qu'elle a été configurée.

0

remplacer la méthode OnDataBinding dans le contrôle de l'utilisateur pour accéder à la base de données et remplir le contrôle des résultats. Vous pouvez également avoir le contrôle gérer l'événement DataBinding.

En d'autres termes, traiter le contrôle utilisateur comme tout autre contrôle.