-1
我有一个页面Product.aspx,那里我有一个用户控件ProductDisplay.ascx已通过拖放创建。Asp.net页面 - 用户控制通信
现在,当在ProductDisplay.ascx中单击按钮时,我想要调用一个在Product.aspx中的日志函数。
要做到这一点我已经在Product.aspx
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ProductDisp.ActivityLog += new User_UserControl_ProductDisplayBox.LogUserActivity(LogProduct);
}
}
现在ProductDisplay.ascx的按钮单击事件
protected void imgBtnBuyNow_Click(object sender, ImageClickEventArgs e)
{
if (ActivityLog != null)
{
ActivityLog(Product);
}
Response.Redirect("~/User/ShoppingCart.aspx");
}
用来代表
上ProductDisplay.ascx
public delegate void LogUserActivity(ProductService objService);
public event LogUserActivity ActivityLog;
我的问题是,只要我点击这个按钮ActivityLog为空。为什么它是空的? 我的想法是,一旦我点击这个按钮,页面回来和它以前的状态丢失。 请帮助我一个理由和解决方案。
其次,我要与空检查
**if (ActivityLog != null)**
{
ActivityLog(Product);
}
我看到一些代码实例化一个委托具有缺省值声明它的时刻做掉,但我没能找到it.Please帮助。