Bonjour,

J'ai une listbox pour laquelle j'ai l'impression qu'un attribut que j'ajoute à chaque item n'est pas conservé lors du IsPostBack:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
if (!IsPostBack)
{
        //  First load
        List<OlrTemplate> olrTemplates = new List<OlrTemplate>();

        olrTemplates = templateDAO.GetAllTemplates();
        foreach (OlrTemplate template in olrTemplates)
        {
                ListItem item = new ListItem(template.getFullId() + " " + template.getFullName(), template.id.ToString());
                // Ajout de mon attribut perso
                item.Attributes.Add("_status", Convert.ToInt32(template.status).ToString());
                lbTemplate.Items.Add(item);
         }
}
si je regarde le source de ma page au premier chargement j'ai bien mon attribut sur chaque item:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
<select size="1" name="xxxxxx" onchange="javascript:setTimeout('__doPostBack(\'xxxxxxxxx\',\'\')', 0)" id="xxxxxxxxxx">
	<option selected="selected" value="1" _status="0">Item 1</option>
	<option value="2" _status="0">Item 2</option>
	<option value="3" _status="1">Item 3</option>
</select>
Si je change l'item de ma listbox la page est rappelée en !IsPostBack et mes items ont perdu mon attribut perso _status:

Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
 
<select size="1" name="xxxxxx" onchange="javascript:setTimeout('__doPostBack(\'xxxxxxxxx\',\'\')', 0)" id="xxxxxxxxxx">
	<option value="1">Item 1</option>
	<option selected="selected" value="2">Item 2</option>
	<option value="3">Item 3</option>
</select>
Est-ce normal ?

Par avance merci pour votre aide