Bonjour,

Je souhaites changer le style d'un bouton dynamiquement lors de l'évènement
DataRowBound.

Mais rien à faire impossible de changer le style.
Voici mon code

page.aspx
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
<asp:ButtonField ButtonType="Button" HeaderText="Edit"  >
                            <ControlStyle CssClass="gvListImportEditBtnDisable" />
                            <HeaderStyle Width="45px" />
                            <ItemStyle HorizontalAlign="Center" />
                        </asp:ButtonField>
page.aspx.cs
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
16
17
18
19
20
21
22
23
24
 
protected void SetBtnState(object sender, GridViewRowEventArgs e)
        {
            if (e.Row.RowType == DataControlRowType.DataRow)
            {
                IImportBCI importBCI = (IImportBCI )e.Row.DataItem;
 
                if (importBCI.DateTraitement != DateTime.MinValue)
                {
                    Button btn;
                    btn = (Button)(e.Row.Cells[5].Controls[0]);
                    btn.Enable= false;
                    btn.CssClass = "gvListImportEditBtnDisable";
                }
                else
                {
                    Button btn;
 
                    btn = (Button)(e.Row.Cells[5].Controls[0]);
                    btn.Enable = true;
                    btn.CssClass = "gvListImportEditBtnEnable";
                }
            }
        }
styles.css
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10
11
 
.gvListImportEditBtnEnable 
{	
	background: url('../images/edit_btn.png') no-repeat scroll top right;
	width: 20px;
	height:20px;
}
.gvListImportEditBtnDisable 
{	
	visibility:hidden;
}
Les styles fonctionnent si je fais l'affectation directement dans la pages.aspx mais l'affectation par programmation ne fonctionne pas.
Le changement de style est simplement ignoré.

La procédure est appeler correctement: le Enable sur le bouton fonctionne.

Un coup de main serait le bienvenu

Merci d'avance