我在该页面中有一页 2 usercontrols uc1和uc2 我在 Usercontrol uc1 上有一个属性 PageID ,现在我在该按钮的点击事件上的uc1上有一个按钮我正在做一些数据库处理并且将返回PageID,现在我想在另一个Usercontrol uc2上访问此PageID。
任何人请帮我找出另一个用户控件上的PageID
答案 0 :(得分:0)
((UserControl1)Page.FindControl("usercontrol1Id)).PageID
但这是肮脏的方式。而是在处理完成后从UC1引发事件,并让页面捕获它。页面有事件后,页面可以通过UC1页面ID调用UC2中的方法。
答案 1 :(得分:0)
一个简单的解决方案......
在您的网页上创建一个采用PageID。
的方法public void MyMethod(int pageID) { ... }
在按钮点击事件中,执行数据库查找,然后调用方法...
public void MyButton_Click(object sender, EventArgs e)
{
var pageID = MyDal.Instance.GetPageID(someParam);
this.MyMethod(pageID);
}
我的方法然后可以在UC2上调用方法,或者它只能设置一个值。无论你需要什么。
当然,有更多可扩展的方法可以做到这一点,但不会使用如此多的耦合,但这样做很快就能解决问题。