UserControl属性更改

时间:2011-03-07 12:35:49

标签: asp.net

我创建了一个用户控件(Popupcontrol),在该控件中我创建了一个属性(PageType),当我在页面上使用Popupcontrol时,我根据页面设置了属性(pagetype)。 但现在有一些问题我必须在页面上的两个按钮和第二个按钮单击我想要更改pagetype属性。所以有任何解决方案相同。

2 个答案:

答案 0 :(得分:1)

根据您的评论,您似乎在PageType事件中绑定了问题中的数据(Page_Load属性),而不是应该在覆盖的DataBind方法中执行此操作。如果页面不在post back请求中,则应该调用(否则您的数据将在您评论中提到的下一个Page_Load事件中覆盖):

protected void Page_Load(object sender, EventArgs e)
{
    if(!Page.IsPostBack)
    {
        DataBind();
    }
}

public override void DataBind()
{
    PageType = someValue;
}

之后,您的点击处理程序可能如下所示:

protected void button2_Clicked(object sender, EventArgs e)
{
    PageType = someOtherValue;
}

答案 1 :(得分:0)

您是否在页面加载事件中设置变量?您可能需要添加:

if (!Page.IsPostback) {
    // Code here.
}