0

下面是我添加一个System.Web.UI.UserControl动态显示页面帮助提示的方法...

public static void AddHelpTip(string helpText, System.Web.UI.ControlCollection collection, System.Web.UI.Page page)
    {
        CWP.controls.HelpTip hTip = (CWP.controls.HelpTip)page.LoadControl("~/_controls/HelpTip.ascx");
        hTip.Text = helpText;
        hTip.StyleVal += " position:fixed;top:9px;left:9px;";
        collection.Add(hTip);
    }

只有在我使用它的任何页面上,我的所有下拉列表都会停止工作,但我的按钮不会。

下拉列表事件附加OnLoad在页面生命周期中,并且在我使用我的AddHelpTip方法之前一切正常,有人可以提供实际有效的不同解决方案,和/或解释出了什么问题。

更多代码,作为评论请求:

在我的 aspx 页面中:

void Locations_Load(object sender, EventArgs e)
    {
        extendedInfo.Mode = CWP.Constants.MODE_LOCATION;

        CWP.Util.AddHelpTip("Store details", this.Controls, this.Page);
        ...

更多在 aspx 页面中:

void Locations_Init(object sender, EventArgs e)
    {
        this.Page.RegisterRequiresControlState(this);

        this.CustomMasterPage.ContentHeader = "Stores";

        this.ddlAccountSelect.SelectedIndexChanged += new EventHandler(ddlAccountSelect_SelectedIndexChanged);
        this.ddlLocationSelect.SelectedIndexChanged += new EventHandler(ddlLocationSelect_SelectedIndexChanged);

        this.btnAccounts.Click += new EventHandler(btnAccounts_Click);
        this.btnTerminals.Click += new EventHandler(btnTerminals_Click);
    }

请记住它在我调用我的AddHelpTip()方法之前一直有效,也就是说,如果我注释掉代码一切正常,调用该方法意味着我的下拉列表开始失去状态,即使下拉列表中的所有项目都是已删除,因为我正在将项目加载到“ !this.IsPostBack”中,如果阻止它执行一次,但AddHelpTip不知何故甚至清除了项目并且事件不会触发

和我的构造函数:

public Locations()
    {
        this.Init += new EventHandler(Locations_Init);
        this.Load += new EventHandler(Locations_Load);
        this._isSecure = true;
    }  
4

0 回答 0