我正在将1.1网络应用程序升级到4.0,并且遇到了自定义用户控件的page_load两次触发的问题,两者都被视为非回发(在这种情况下IsPostBack为false)。我已经阅读过,似乎有两个罪魁祸首,1是一个img标签,在src部分没有任何东西(在这个页面上根本没有图像)或2个问题,因为AutoEventWireup和Handles在同时。我查看了所有代码,并且根本没有Handles关键字,并且AutoEventWireUp在每个页面上都设置为true,但我仍然遇到此问题。这是一些来源
Private Sub Page_Load(ByVal sender As System.Object, ByVal e As System.EventArgs)
If Not IsPostBack Then
End If
End Sub
宣言
<%@ Control Language="vb" CodeBehind="UCHeader.ascx.vb" Inherits="PO.Web.UCHeader"
AutoEventWireup="true" TargetSchema="http://schemas.microsoft.com/intellisense/ie5" %>
如果需要,我可以展示更多来源。谢谢你的帮助。
答案 0 :(得分:0)
我建议设置AutoEventWireup = false。阅读此article,因为aspx框架根据方法名称/签名调用方法,autoeventwireup生成代码以绑定它们被调用两次的事件。至少那是.net / visual studio早期版本中的行为我还没有找到任何说明是否是Visual Studio 2010的情况。