J'utilise Visual Studio 2012 édition professionnelle. Je ne vois pas de différence sur la définition de "true" par rapport à "false" pour la propriété AutoEventWireup dans la directive page. Tout le temps, il se comporte comme "vrai", Signification - Je définis explicitement les événements "faux" et non contraignants, mais les événements sont implicitement liés. S'il vous plaît laissez-moi savoir si je manque quelque chose.AutoEventWireup True Vs False
Répondre
Ce paramètre ne concerne pas le déclenchement d'un événement, mais plutôt la liaison de gestionnaires aux événements de page standard. Comparez ces deux extraits qui illustrent la gestion de l'événement Load
.
Tout d'abord, avec AutoEventWireup="true"
:
public class PageWithAutoEventWireup
{
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("Page_Load is called");
}
}
En second lieu, avec AutoEventWireup="false"
:
public class PageWithoutAutoEventWireup
{
overrie void OnInit(EventArgs e)
{
this.Load += Page_Load;
}
protected void Page_Load(object sender, EventArgs e)
{
Response.Write("Page_Load is called");
}
}
événement Load
sera tiré par la page et gérée par votre code dans les deux cas. Mais dans le second cas, vous devez vous inscrire à l'événement explicitement, alors que dans le premier cas ASP.NET fait tout pour vous.
Bien sûr, la même chose pour d'autres événements la page du cycle de vie, comme Init
, PreRender
, etc.
Je sais que c'est un vieux fil, mais je ne avais encore ajouter ce qui suit, ce qui m'a récemment aidé :
En plus de la réponse d'Andrei, il vaut la peine d'ajouter qu'en définissant AutoEventWireup sur "true", vous risquez d'appeler Page_Load() deux fois chaque fois que la page est chargée. Cela m'est arrivé. Il est expliqué en détail here, d'où je copiais les suivantes:
Ne réglez pas AutoEventWireup à true si la performance est une considération clé . Lorsque la mise en veille automatique des événements est activée, ASP.NET doit effectuer entre 15 et 30 tentatives pour faire correspondre les événements avec les méthodes.
Notez les points suivants au sujet des gestionnaires d'événements de liaison aux événements:
Si vous définissez AutoEventWireup sur true, assurez-vous que vous ne également connecter manuellement des gestionnaires d'événements page aux événements. Si vous le faites, les gestionnaires peuvent être appelés plusieurs fois.
La liaison automatique est effectuée uniquement pour les événements de page, et non pour les événements pour les contrôles sur la page.
Comme alternative aux événements de liaison aux gestionnaires, vous pouvez remplacer les méthodes Oneventname de la page ou des contrôles.
- 1. Définition de AutoEventWireup = "false" par défaut
- 2. Neat code pour convertir bool [] -> "false, true, true, false"
- 3. Ruby, True/false regex
- 4. Pourquoi (Si false renvoie "true") ... retourne true?
- 5. Est-ce vrai && true == false?
- 6. Vérification de None, False, True
- 7. alternative à label.visible = true/false
- 8. GridViewRow colonne visible true, false
- 9. moveTaskToBack (true) retourne false toujours
- 10. Que fait la propriété ASP.net AutoEventWireup?
- 11. Javascript regex renvoyant true .. then false .. then true .. etc
- 12. Quelle est la signification de (true && false || true) en C#?
- 13. javascript true et true renvoyant false dans if statement?
- 14. comment combiner le "TRUE FALSE" en "FALSE" en utilisant R?
- 15. HiddenInput (DisplayValue = false)] vs [ScaffoldColumn (false)]
- 16. Comment convertir bool true ou false en chaîne "True" ou "False"
- 17. Quelle est la meilleure pratique: MethodReturnsBoolean == true/false OU true/false == MethodReturnsBoolean
- 18. performance autoeventwireup coût
- 19. HttpProtocolParams.setUseExpectContinue (params, false) - quand définir true?
- 20. Comportement étrange ScaleAnimation setFillAfter (true)/false
- 21. conversion Chaîne true/false en valeur booléenne
- 22. mysqli_fetch_row() retourne false lorsque mysqli_query() retourne true
- 23. Google Markers setVisible true/false afficher/masquer
- 24. Excel UDF renvoie True mais pas False?
- 25. Requête Linq return true or false
- 26. Rails keep if false, render if true
- 27. moyen efficace de comptage `` FALSE` entre TRUE`
- 28. Traitement VB.NET True/False en tant qu'entier
- 29. Excel: VLOOKUP qui renvoie true ou false?
- 30. bitset :: operator [] == false/true ou bitset :: test?
événements se sont binded implicitement même nous avons mis AutoEventWireup = "false". Signification - l'événement s'est inscrit implicitement sans le code suivant dans le second extrait. override void OnInit (EventArgs e) { this.Charger + = Page_Load; } – afin
@afin, ça sonne bizarre. Pourriez-vous s'il vous plaît montrer votre code? – Andrei
Désolé pour la confusion. J'ai mal lu votre réponse. Vous vouliez dire AutoEventWireup est seulement pour les événements de la page, il n'affectera pas d'autres événements tels que l'événement de changement des événements et des contrôles click.Signification - autres que les événements de page seront implicitement liés indépendamment de la valeur AutoEventWireup. Je peux bien? – afin