Question

Il semble que cela devrait être simple, mais je suis ahuri. J'ai ma liste de vues toute la configuration et lié à ma source de données LINQ. La source dépend d'une liste déroulante qui détermine les informations de branche à afficher dans la liste. Mon modèle d'édition fonctionne correctement, mais mon modèle d'insertion ne fonctionne pas car il veut l'ID de branche que je souhaite obtenir de la liste déroulante en dehors de la liste mais je ne sais pas comment lier cette valeur et la définir dans mon modèle. Cela ressemble à ceci:

<InsertItemTemplate>
    <tr style="">
      <td>
         <asp:Button ID="InsertButton" runat="server" CommandName="Insert" 
               Text="Insert" />
     </td>
      <td>
       <asp:TextBox ID="RechargeRateTextBox" runat="server" 
          Text='<%# Bind("RechargeRate") %>' />
         </td>
              <td>
       <asp:Calendar SelectedDate='<%# Bind("StartDate") %>' ID="Calendar1"  runat="server"></asp:Calendar>                                    
       </td>
           </tr>
    </InsertItemTemplate>

Je dois y insérer une étiquette qui se lie à la valeur d'une liste déroulante asp liée à la base de données en dehors de la vue liste pour que l'insertion fonctionne.

Était-ce utile?

La solution 2

J'ai fini par aller avec ça, merci twanfosson.

protected void ListView1_ItemInserting(object sender, System.Web.UI.WebControls.ListViewInsertEventArgs e)
        {
            e.Values["BranchID"] = DropDownList1.SelectedValue;
        }

Autres conseils

Utilisez le rappel OnSelectedIndexChanged (avec AutoPostBack = True) pour DropDownList pour définir manuellement les valeurs de ListView sur les valeurs par défaut pour cette branche lorsque la valeur de DropDownList est modifiée.

protected void BranchDropDownList_OnSelectedIndexChanged( object sender, EventArgs e )
{
    DropDownList ddl = (DropDownList)sender;
    RechargeRateTextBox.Text = BranchManager.GetRechargeRate( ddl.SelectedValue );
}

Enveloppez le tout dans un UpdatePanel et tout peut se faire via AJAX.

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