[FW 1.1] FindControl sur DataGrid
:salut:
j'ai besoin d'un popup de confirmation sur une action delete sur mon datagrid.
j'ai suivi la FAQ pour creer le code.
Seulement, lorsque j'ajoute l'attribut au bouton, ca plante car il ne trouve pas le boutons 8O
Voila le front code
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
| <input id="ConfirmDelete" type="hidden" runat="server">
.
.
.
.
<Columns>
<asp:BoundColumn Visible="False" DataField="ID" ReadOnly="True"></asp:BoundColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:ImageButton runat="server" ImageUrl="..\..\..\images\manage.png" CommandName="Manage" CausesValidation="false"
AlternateText="Details" id="manageButton"></asp:ImageButton>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn>
<ItemTemplate>
<asp:ImageButton runat="server" ImageUrl="..\..\..\images\delete.gif" CommandName="Delete" CausesValidation="false"
AlternateText="Delete" ID="deleteButton"></asp:ImageButton>
</ItemTemplate>
</asp:TemplateColumn> |
le javascript
Code:
1 2 3 4 5 6 7 8 9 10
| <script language="javascript">
function confirmSubmit()
{
var msg = "Are you sure to delete this activity ?";
if (confirm(msg))
{
document.formulaire.ConfirmDelete.value="oui";
}
}
</script> |
et le code-behind
Code:
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19
|
private void Page_Load(object sender, System.EventArgs e)
{
if (!IsPostBack)
LoadData();
if ((ImageButton)this.XamuCustomDataGrid1.FindControl("deleteButton") != null)
((ImageButton)this.XamuCustomDataGrid1.FindControl("deleteButton")).Attributes.Add("onClick","return confirmSubmit();");
}
private void XamuCustomDataGrid1_DeleteCommand(object source, DataGridCommandEventArgs e)
{
if (((HtmlInputHidden)this.FindControl("ConfirmDelete")).Value == "oui")
{
CvrActivity cvrAct = new CvrActivity();
cvrAct = instance.GetActivityById(long.Parse(e.Item.Cells[0].Text));
instance.DeleteActivityWithChild(cvrAct);
LoadData();
}
} |
J ai essaye en mettant le onClick directement dans <asp:ImageButton> mais j ai une erreur de compilation.
Et dans ce cas, rien ne se passe (ImageButton)this.XamuCustomDataGrid1.FindControl("deleteButton") reste tjrs null ?!?
ou est mon erreur ?