J'ai une page qui, selon la saisie d'une page précédente, répertorie un nombre variable de questions différentes extraites d'une base de données. Je n'arrive pas à trouver un exemple de ceci en ligne: Pour chaque question qui est affichée, j'ai besoin de générer par programme un DropDownList afin que l'utilisateur puisse sélectionner oui ou non pour chacune de ces questions. En espérant que quelqu'un ici puisse me donner des indications sur où regarder. Merci.Génération de WebControls par programmation
2
A
Répondre
3
probablement votre meilleur pari est d'utiliser le contrôle de répéteur avec un modèle qui contient juste le dropdownlist avec des éléments de liste statiques. Quelque chose comme ceci:
<asp:Repeater runat="server" id="questionRepeater">
<HeaderTemplate>
//some html
</HeaderTemplate>
<ItemTemplate>
<div align=center>
<asp:Label runat="server"><%# DataBinder.Eval(Container.DataItem,"questionColumn")%></asp:Label>
<asp:DropDownList runat="server">
<asp:ListItem Text="Yes" Value="1" />
<asp:ListItem text="No" Value="0" />
</asp:DropDownList>
</ItemTemplate>
</asp:Repeater>
Puis dans votre code derrière, vous pouvez exécuter votre requête et lier les résultats au répéteur.
private void Page_Load(object sender, System.EventArgs e)
{
if (!IsPostBack)
{
SqlConnection db = new SqlConnection("Server=server;UID=uid;PWD=password;Database=whatever");
string sSQL = "Select questionColumn from Questions";
SqlCommand cmd = new SqlCommand(sSQL, conDotNet);
db.Open();
SqlDataReader dtrCat = cmd.ExecuteReader();
questionRepeater.DataSource = dtrCat;
questionRepeater.DataBind();
}
}
2
ce pseudo est, mais peut aider ...
//essentially, run through loop of questions and for each
//add the question and yes/no stuff..
///PlaceHolder is a ContentPlaceholder Control within the .aspx page.
foreach(inputtype input in this.inputs)
{
Label lbl = new Label();
lbl.Text = input.Question;
DropDownList ddl = new DropDownList();
ddl.ID = input.QuestionID;
ddl.DataSource = YesNoDataTable;
ddl.DataBind();
this.PlaceHolder.Controls.Add(lbl);
this.PlaceHolder.Controls.Add(ddl);
}
0
Dim tDropDownList As DropDownList = Nothing
Dim tQuestion As String = String.Empty
For Each tQuestion In tQuestions
tDropDownList = New DropDownList
tDropDownList.Name = "someName here"
tDropDownList.Items.Add("Yes")
tDropDownList.Items.Add("No")
Page.Constrols.Add(tDropDownList)
Next
Questions connexes
- 1. Vérifiez la génération de l'iPod touch par programmation
- 2. Plus d'informations sur Custom Webcontrols?
- 3. Défilement de UITextView par programmation
- 4. Défilement de QGraphicsView par programmation
- 5. Awaking Mac par programmation
- 6. Vista Série par programmation
- 7. Ajouter un modèle de site (.stp) à SharePoint par programmation
- 8. Génération de code HTML par programme
- 9. Y at-il un moyen de désactiver/remplacer le style par défaut pour les WebControls désactivés
- 10. Langues de cinquième génération?
- 11. Tri par programmation Menu Démarrer
- 12. Javascript - invocation d'événements par programmation
- 13. Flex - Effacer DateField par programmation
- 14. Envoi de MMS par programmation dans l'iPhone
- 15. Création de contrôles par programmation dans Cocoa
- 16. Création de XSD à partir de la base de données par programmation en C#
- 17. Action de génération par défaut pour un type de fichier
- 18. Rendre la colonne liée invisible par programmation
- 19. Diffuser/Fusionner des documents Xml par programmation
- 20. Comment générer des favicon vierges par programmation?
- 21. Lier/lier des listes dynamiquement/par programmation
- 22. Comment appeler un événement par programmation?
- 23. Mise au point par programmation d'un hippo.CanvasEntry?
- 24. ActionScript 3: animation par programmation fluide
- 25. Créer un contrôle Silverlight DatePicker par programmation
- 26. Arrêtez par programmation l'exécution JavaScript dans Firebug
- 27. Arrêt d'un storyboard par programmation instancié
- 28. Navigateur Web par programmation Bibliothèque Java
- 29. Silverlight Programmer le texte par programmation
- 30. Ajout/suppression par programmation d'onglets sur wxNotebook par PageText
La suggestion Womps sur le contrôle du répéteur est probablement meilleure si la seule chose qui change est bien la question. Mais si vous aviez des «types» de questions qui déclenchent des mécanismes de réponse différents, disons un int, alors vous auriez probablement besoin de quelque chose comme ça ... – RSolberg
par des mécanismes de réponse différents, je suggère que vous ayez peut-être un int, peut-être un qui est un oui/non, peut-être un qui liste les couleurs, etc. – RSolberg
Ouais la méthode de womp est plus adaptée à mon problème, mais seulement par hasard car je n'ai pas expliqué beaucoup en détail dans la question, mais merci pour partage cette méthode. Je ne l'avais jamais vu auparavant. –