我有一个无法在项目的服务器端解决的问题。
我会解释:
我有一个名为 Global 的页面,这是 ASP.NET 页面。此页面使用名为 CateGories 的 UserControl。现在我在这个 UC 页面上有一个按钮,当我按下时,我想调用全局页面上的一个函数,该函数与我的数据库建立连接。
我决定使用代表(事件)
这是代码。
全局页面:
//在这里我将我的函数添加到事件中
protected void Page_Load(object sender, EventArgs e)
{
if (!IsPostBack)
{
ShowCurrentTime.Text = DateTime.Now.ToString();
}
CateGories ClassCat = new CateGories();
ClassCat.MainDel += PopulateLinks;
}
//这是事件将运行的函数
public void PopulateLinks(string CategoryName)
{....}
UC页面代码(CateGories):
//事件委托
public delegate void Click(string ButtonName);
public event Click MainDel = null;
//当我点击一个按钮时调用的函数
protected void News_Click(object sender, EventArgs e)
{
if (MainDel != null)
{
MainDel(News.Text);
}
}
现在一切都应该可以正常工作了,但是当编译器到达
if(MainDel!=null)
...
它没有进入函数,MainDel 为空。我在这里看不到问题,为什么在我将函数插入 MainDel 后,它最终会变为空...
如果有人可以提供帮助,我会很高兴谢谢。最大限度。