在用户控件由codebehind无法访问GridView控件事件 [英] Can't access GridView event at usercontrol by codebehind

查看:148
本文介绍了在用户控件由codebehind无法访问GridView控件事件的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

IpInterfaceUC用户控件

<div id="dvChannel" runat="server">
        <asp:GridView ID="gvChannelUC" 
            OnRowCommand="gvChannelUC_RowCommand"
            OnSelectedIndexChanged="gvChannel_SelectedIndexChanged"
        />
</div>

IPServices页codeBehind

if (!IsPostBack){
}else
{    
 string str_btn = Request.Form.Keys[Request.Form.Keys.Count - 1].ToString();
 handleClick(str_btn);
}

它总是显示的 str_btn 是null.If我点击按钮,就会显示按钮的id.But当我点击GridView的在选择,它显示的 str_btn 为空。应该显示GridView控件的ID,当我们单击选择。

It always show str_btn is null.If I click Button,It'll show button's id.But when I click Select at GridView,It show str_btn is null.It should be show GridView's id when we click select.

感谢您的任何解释。

推荐答案

按我的理解,你需要电网事件处理(的.ascx)页/ codebehind(的.aspx)。

As per my understanding you need grid event handing (.ascx) on page/codebehind (.aspx).

在用户控件声明事件处理程序

declare eventhandler in userControl

 public event EventHandler<EventArgs>  RaiseSelectedIndexChanged=delegate {};

在userControl.cs手柄用户控件SelectedIndexChanged事件

handle userControl selectedindexchanged event in userControl.cs

   protected void gvChannel_SelectedIndexChanged(object sender, EventArgs e)
    {
        var raiseSelectedIndexChanged = RaiseSelectedIndexChanged ;
        if(raiseSelectedIndexChanged!=null)
        {
            raiseSelectedIndexChanged(sender, e);
        }
    }

注册和ASPX使用您的用户控件(我希望你已经做了)这code会在aspx页面

register and use your userControl in aspx (which I hope you already did) this code will go in aspx page

        <uc:userControl OnRaiseSelectedIndexChanged="OnRaiseSelectedIndexChanged"/>

处理ASPX code事件背后

handle the event in aspx code behind

    protected void OnRaiseSelectedIndexChanged(object sender, EventArgs e)
    {
       //handle your event and put logic 
    }

我希望我说清楚,让我知道,如果它混淆了你。

I hope i make it clear , let me know if it confuses you.

这篇关于在用户控件由codebehind无法访问GridView控件事件的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆