OVH Cloud OVH Cloud

dropdownlist +asp.net+Csharp

1 réponse
Avatar
nicopilami
Salut, je cree dynamiquement une dropdownlist qu'on appelera ici quantite,
et je cherche à lui attribuer une fonction lors d'un evenement du type
onChange.
j'ai trouve des infos sur les "delegate" sur le net, mais rien de precis.
Pourriez-vous m'aider ?


//Generation de la liste des quantites
DropDownList quantite=new DropDownList();
quantite.ID="";
for(int j=0;j<10;j++)
{
ListItem item_list=new ListItem();
item_list.Text=""+j;
item_list.Value=""+j;
if(j==item.quantite)item_list.Selected=true;
quantite.Items.Add(item_list);
}
cellule_quantite_article.Controls.Add(quantite);


bye
Nico

1 réponse

Avatar
Franck Quintana
Bonjour,

Ceci devrait vous aider.
Créez une page default.aspx

------------------------------------------------------------------------
<%@ Page Language="C#" AutoEventWireup="true"
CodeFile="Default.aspx.cs" Inherits="_Default" %>

<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">

<html xmlns="http://www.w3.org/1999/xhtml" >
<head runat="server">
<title>Untitled Page</title>
</head>
<body>
<form id="form1" runat="server">
<div runat="server" id="divCtnr" />
</form>
</body>
</html>
------------------------------------------------------------------------

Ensuite dans default.aspx.cs :

------------------------------------------------------------------------
using System;
using System.Web;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.HtmlControls;

public partial class _Default : System.Web.UI.Page {

protected ListItem[] GetItems(string parentID) {
ListItem[] oItems = new ListItem[5];
for (int i = 0; i < 5; i++) {
ListItem oItem = new ListItem();
oItem.Text = "text " + i;
oItem.Value = parentID + "value " + i;
oItems[i] = oItem;
}
return oItems;
}

protected override void CreateChildControls() {
base.CreateChildControls();

for (int i = 0; i < 10; i++) {
DropDownList oList = new DropDownList();
oList.ID = "list" + i;
oList.AutoPostBack = true;
oList.Items.AddRange(GetItems(oList.ID));
oList.SelectedIndexChanged += new
EventHandler(oList_SelectedIndexChanged);
divCtnr.Controls.Add(oList);
divCtnr.Controls.Add(new HtmlGenericControl("br"));
}
}

void oList_SelectedIndexChanged(object sender, EventArgs e) {
DropDownList oDdl = (DropDownList)sender;
Response.Write("Selection changed in: " + oDdl.ClientID);
}

}
------------------------------------------------------------------------

Franck Quintana
Active+ Software
http://www.activeplus.com