1

我有一个带有用户控件的 asp.net 4 页面。当用户在用户控件内的网格​​中选择一个值时,我想使用网格中的值更新数据源(在我的情况下为 LINQ 数据源)的 WHERE 子句。数据源对象在父页面中。页面生命周期在网格的 item 命令方法执行之前加载父页面,因此我无法获取所选值。

如何才能做到这一点?如果可能的话,我想在服务器端做这一切。

4

1 回答 1

3

在子页面中创建一个事件,如下所示:

public event EventHandler DataChanged;

在子页面中,在适当的时候这样调用它:

if (DataChanged != null)
    DataChanged(sender, new EventArgs());

然后在父页面中,创建一个要调用的方法并像这样附加它:

protected void DoSomething(object sender, EventArgs e)
{
}

child.DataChanged += DoSomething;

哦,是的,我差点忘了。我认为您必须在 Page_Init() 中设置事件关系,而不是等待 Page_Load()。

于 2013-07-10T17:08:49.847 回答