Je ne comprends pas pourquoi je ne peux pas obtenir la valeur sélectionnée ddl ..problème DROPDOWNLIST
ASP CODE:
<table>
<tr>
<th> Annee:</th>
<td>
<asp:DropDownList ID="ddlAnnee" runat="server" />
</td>
</tr>
<tr>
<th colspan="2">
<asp:Button ID="btnValidate" runat="server" onclick="btnValidate_Click"
Text="Validate" />
</th>
</tr>
</table>
code-behind:
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
BindControls();
}
}
public void BindControls()
{
this.ddlAnnee.DataSource = new BLL.ANNEE_MANAGER().List(false, true, null);
this.ddlAnnee.DataTextField = "INTITULE_AN";
this.ddlAnnee.DataValueField = "ID_AN";
this.ddlAnnee.DataBind();
}
protected void btnValidate_Click(object sender, EventArgs e)
{
int Id_an = int.Parse(this.ddlAnnee.SelectedValue);
}
}
}
Alors, quand je mettre un point d'arrêt au chargement de la page et la partie de liaison, c'est bon, le ddl est rempli correctement et la page affiche correctement le ddl. Quand je clique sur le bouton, j'arrive dans la méthode btnValidate_Click mais le ddl est empy!
Je suppose que j'ai oublié quelque chose .. S'il vous plaît aidez-moi!
Merci ..
En fait j'ai toujours la première valeur de ddl si je supprime! Condition IspostBack. Mais comment puis-je m'assurer de la compensation? –
Le code donné fonctionne bien pour moi dans le cadre 3.5 ou supérieur. Quel cadre utilisez-vous? – sam
En fait viewstate a été désactivé .. Honte à moi .. merci –