[ASP.NET] Afficher un message d'erreur pendant quelques secondes
Résolu
Chewi-Chew
Messages postés
47
Statut
Membre
-
Chewi-Chew Messages postés 47 Statut Membre -
Chewi-Chew Messages postés 47 Statut Membre -
Bonjour,
Cela fait maintenant quelques heures que je bute sur un probleme ASP.
Grosso modo j'aimerai afficher un message d'erreur (ou d'information) en haut de page pendant 5 secondes.
La premiere partie c'est d'afficher un message et ici il n'y a pas de problème puisque mon déclencheur engendre un postback.
La probleme viens de la suppression du message d'erreur, puisque je le fais grace a un System.Timers.Timer de 5 secondes et que l'événement PostBack n'est pas déclenché.
J'ai essayé des dizaines de méthodes sans trouver la bonne (sinon je ne serai pas ici).
- Avec et sans Update Panel
- En appelant un fonction javascript
- En utilisant des thread sleep (couplé ou non avec des AutoResetEvent)
- ...
Donc j'en appel a vos connaissances. car je suis a cours d'idée
Voici mon code (behind) pour le moment :
Et voici mon code asp :
Merci à tous !
Cela fait maintenant quelques heures que je bute sur un probleme ASP.
Grosso modo j'aimerai afficher un message d'erreur (ou d'information) en haut de page pendant 5 secondes.
La premiere partie c'est d'afficher un message et ici il n'y a pas de problème puisque mon déclencheur engendre un postback.
La probleme viens de la suppression du message d'erreur, puisque je le fais grace a un System.Timers.Timer de 5 secondes et que l'événement PostBack n'est pas déclenché.
J'ai essayé des dizaines de méthodes sans trouver la bonne (sinon je ne serai pas ici).
- Avec et sans Update Panel
- En appelant un fonction javascript
- En utilisant des thread sleep (couplé ou non avec des AutoResetEvent)
- ...
Donc j'en appel a vos connaissances. car je suis a cours d'idée
Voici mon code (behind) pour le moment :
public static void AfficherAlert(Page page, string message)
{
Control ctrl = page.Master.FindControl("labMessageApplication");
if (ctrl != null && (ctrl as Label != null))
{
((Label)ctrl).Text = message;
((TableCell)((Label)ctrl).Parent).BackColor = Color.White;
System.Timers.Timer tm = new System.Timers.Timer(5000);
tm.Elapsed += new System.Timers.ElapsedEventHandler(page.tm_Elapsed);
tm.AutoReset = false;
tm.Start();
}
}
static void tm_Elapsed(this Page page, object sender, System.Timers.ElapsedEventArgs e)
{
((System.Timers.Timer)sender).Stop();
Control ctrl = page.Master.FindControl("labMessageApplication");
if (ctrl != null && (ctrl as Label != null))
{
((Label)ctrl).Text = "";
((TableCell)((Label)ctrl).Parent).BackColor = Color.Transparent;
}
}
Et voici mon code asp :
<asp:ScriptManager ID="ScriptManager1" runat="server" />
<script type="text/javascript">
function ClearMessageApplication() {
document.getElementById("labMessageApplication").value = "";
}
</script>
<asp:UpdatePanel ID="UpdatePanel1" runat="server">
<ContentTemplate>
<asp:Table ID="tableMessageApplication" runat="server" Width="100%" Style="position: fixed;
z-index: 2; left: 0; top: 0;">
<asp:TableRow>
<asp:TableCell HorizontalAlign="Center">
<asp:Label ID="labMessageApplication" runat="server" ForeColor="Red" />
</asp:TableCell>
</asp:TableRow>
</asp:Table>
</ContentTemplate>
</asp:UpdatePanel>
Merci à tous !
A voir également:
- [ASP.NET] Afficher un message d'erreur pendant quelques secondes
- Comment recuperer un message supprimé sur whatsapp - Guide
- Epingler un message whatsapp - Accueil - Messagerie instantanée
- Message supprimé whatsapp - Guide
- Message absence thunderbird - Guide
- Message du pere noel gratuit whatsapp - Accueil - Messagerie instantanée