C# 生成回发到特定方法/事件处理程序

C# 生成回发到特定方法/事件处理程序,c#,asp.net,postback,C#,Asp.net,Postback,我有一个自定义的gridview,我正在为RowDataBound上的onclick手动生成一个回发事件。但是,此回发始终指向/期望单击行上的特定方法 以下是实现回发的当前代码: if (!String.IsNullOrEmpty(this.OnRowClick)) e.Row.Attributes.Add("onclick", this.Page.ClientScript.GetPostBackEventReference(this.grid

我有一个自定义的gridview,我正在为RowDataBound上的onclick手动生成一个回发事件。但是,此回发始终指向/期望单击行上的特定方法

以下是实现回发的当前代码:

if (!String.IsNullOrEmpty(this.OnRowClick))
                e.Row.Attributes.Add("onclick", this.Page.ClientScript.GetPostBackEventReference(this.grid1, "Select$" + e.Row.RowIndex.ToString()));
正如您在这里看到的,我在网格中设置了一个属性,询问在执行回发时调用哪个方法。。。但是,我似乎在web上找不到任何地方如何在_dopostback调用中指定要调用的方法。。。它总是毫无例外地希望采用这种方法:

grid1_SelectedIndexChanged(object sender, eventargs e)
但我不想那样。我希望它转到OnRowClick属性中包含的任何方法名称

以下是可视人物当前的设置方式:


就这样。。。我不确定。我是一个视觉化的人,所以也许这对每个人都有帮助:

自定义控件设置(缩小版):

[其他一些控制措施

-=网格视图=-

[其他一些控制]

[(控件事件属性)

OnRowClick事件(GridViewRow事件参数)]

[(控制事件连线)

如果(OnRowClick!=null)

this.GridView1.SelectedIndexChanged+=InternalMethod(…)

[(内部方法(…))

GridViewRow行=this.GridView1.SelectedRow

如果(OnRowClick!=null)

onrow单击(行);]]

到目前为止还不错。。。没有任何问题。。。但是当我这样设置时:

HtmlPage

->自定义控件(mygrid)

--->mygrid.OnRowClick+=SomePageMethod(GridViewRow行)

------>SomePageMethod永远不会被调用。。。喜欢从来没有

由于我已将控件构建为复合控件,因此无法通过其内部代码进行调试,因此我无法说出为什么没有发生…:请帮我把这件事做好

自定义控制代码:

    this.grid1.SelectedIndexChanged += new EventHandler(grid1_SelectedIndexChanged);

    void grid1_SelectedIndexChanged(object sender, EventArgs e)
    {
        GridViewRow row = this.grid1.SelectedRow;
        if(this.OnRowClick!=null)
            OnRowClick(this.grid1, row);

    }

    #region Events
    public delegate void RowClickEventHandler(object sender, GridViewRow SelectedRow);
    [Category("Events")]
    [Description("This event fires when a row is clicked, if it is defined")]
    public event RowClickEventHandler OnRowClick;
    #endregion
网页代码:

this.pgrSummary.OnRowClick += new SimplePager.SimplePager.RowClickEventHandler(pgrSummary_OnRowClick);

而且methode永远不会被调用…

是因为onclick事件设置了一个渲染时间,所以使用一个方法来动态计算它不会起作用吗?被调用的方法能否计算出逻辑,然后调用所需的单击处理程序?仅此而已。。。我不确定。我是一个视觉化的人,所以也许这对每个人都有帮助: