Changer le style (CSS) d'un Button dans DataRowBound
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:
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:
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:
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é. :ouin:
La procédure est appeler correctement: le Enable sur le bouton fonctionne.
Un coup de main serait le bienvenu
Merci d'avance