2010-03-17 6 views
0

Je suis assez nouveau dans la programmation d'asp net 2.0 et je me demandais comment ajouter un élément "all" à une listbox, donc je peux filtrer mes résultats selon un critère spécifique (depuis une base de données) ou afficher tout Les resultats. Merci à l'avanceDatabind listbox

Répondre

1

Une solution consiste à modifier le DataSource du contrôle qui repose sur la sélection dans la zone de liste:

  1. En cas Databound de la zone de liste, insérez une ListItem en position 0 avec le texte ' ALL » et la valeur '%'
  2. Organisez votre source de données (dans mon cas SQLDataSource) pour inclure la condition suivante:

    [ColumnName] LIKE @ColumnName

  3. Ajouter un paramètre à la source de données pour l'objet qui dépend de la sélection dans la zone de liste:

    <asp:ControlParameter ControlID="ListBoxID" Name="ColumnName" PropertyName="SelectedValue" />

+0

Parfait, pouvez-vous s'il vous plaît me donner un exemple de comment l'ajouter à la position 0 dans la événement de databound? Je l'ai fait: protected void txtCiudad_DataBound (expéditeur d'objet, EventArgs e) { txtCiudad.Items.Add (new ListItem ("Todas", "%")); } mais je ne peux pas définir l'index. merci – JaSk

+0

Peu importe, je l'ai trouvé. son insert au lieu d'ajouter – JaSk