[ASP.NET]GridView触发SelectedIndexChanged事件

问题描述

搜索的时候没在这搜到答案,但看到有人提出了同样的问题,已结贴不能回复,我就把我在别处找到的文章转过来吧,希望能帮到小忙。“好久没有搞ASP.Net了,发现有好多的东西都忘记了,现在在这里记录一下,以后用的时候可以拿出来看看关于Silverlight的记录现在实在是没有时间了,上个项目刚搞完,这个项目马上就来了,还得天天加班,一点空闲都没有,反正得抽点事件来整理一下废话不说了,整理一下首先在GridView中必须加上“选择”的按钮,然后在Page_Load中添加:protectedvoidpage_load(objectsender,eventargse){gvtest.selectedindexchanged+=neweventhandler(gridview1_selectedindexchanged);}最后在点击绑定的GridView项的时候就可以触发SelectedIndexChanged事件了。这里我把“选择”按钮设置成了TemplateField,然后让它的Text绑定Email字段,数据库的其余字段也可以绑定到GridView上,但是在这个程序里我把他们的可见属性都设置成了False。页面代码:body><formid="form1"runat="server"><divstyle="overflow-y:auto;width:100%;height:100%"><asp:gridviewid="gvtest"runat="server"autogeneratecolumns="false"datakeynames="userid"datasourceid="sqldatasource1"showheader="false"><columns><asp:boundfielddatafield="userid"headertext="userid"insertvisible="false"readonly="true"sortexpression="userid"visible="false"/><asp:boundfielddatafield="email"headertext="email"sortexpression="email"visible="false"/><asp:boundfielddatafield="passwd"headertext="passwd"sortexpression="passwd"visible="false"/><asp:boundfielddatafield="lastlogin"headertext="lastlogin"sortexpression="lastlogin"visible="false"/><asp:templatefieldshowheader="false"><itemtemplate><asp:linkbuttonid="linkbutton1"runat="server"causesvalidation="false"commandname="select"text='<%#bind("email","{0}")%>'></asp:linkbutton></itemtemplate></asp:templatefield></columns></asp:gridview><br/><br/><asp:labelid="lblregioncaption"runat="server"text="label"></asp:label><br/><asp:sqldatasourceid="sqldatasource1"runat="server"connectionstring="<%$connectionstrings:vmessagecenterconnectionstring%>"selectcommand="select[userid],[email],[passwd],[lastlogin]from[users]"></asp:sqldatasource></div></form>//////////////////////////////////////////////////////////////////////////////SelectIndexChenged事件的代码:protectedvoidgridview1_selectedindexchanged(objectsender,eventargse){intindex=gridview1.selectedindex;stringid=gridview1.selecteddatakey.values["userid"].tostring();lblregioncaption.text=id;gridviewrowrow=gridview1.selectedrow;}”//FROM:http://biancheng.dnbcw.info/javascript/362440.html,作者:cpcpc

解决方案

解决方案二:
protectedvoidpage_load(objectsender,eventargse){gvtest.selectedindexchanged+=neweventhandler(gridview1_selectedindexchanged);}=》protectedvoidpage_load(objectsender,eventargse){if(!IsPostBack){gvtest.selectedindexchanged+=neweventhandler(gridview1_selectedindexchanged);}}
解决方案三:
referhere:

时间: 2024-10-28 13:50:15

[ASP.NET]GridView触发SelectedIndexChanged事件的相关文章

为什么设置了DropDownList的AutoPostBack=True还是不能触发SelectedIndexChanged事件?

select 有人问 (1)AutoPostBack="True" <asp:DropDownList id="DropDownList1" runat="server" AutoPostBack="True"></asp:DropDownList>  (2)事件也注册了   this.DropDownList1.SelectedIndexChanged += new System.EventHandl

asp.net GridView手写事件,包括取主键、取值、更新、选择、删除

刚才在调整网站友情链接管理页面,里面有个简单的GridView.因为更改了架构,所以需要手工给GridView编写编辑.删除等事件.最近也经常碰到有人问我GridView的问题,于是写成经验之书以警后人. 图片是本网站后台的友情链接管理页面:     前两者的代码比较固定,一般都是:  代码如下 复制代码 protected void gvFriendLink_RowEditing(object sender, GridViewEditEventArgs e){ gvFriendLink.Edi

asp.net Gridview行绑定事件新体会_实用技巧

在网上搜了一下事件执行顺序,并经过测试在有分页的情况下是不正确的.事件执行顺序: 一.GridView 显示绑定的数据(默认为5行): 复制代码 代码如下: DataBinding RowCreated:Header[0] RowDataBound RowCreated:DataRow[1] RowDataBound RowCreated:DataRow[2] RowDataBound RowCreated:DataRow[3] RowDataBound RowCreated:DataRow[4

如何触发datagrid中的dropdownlist的SelectedIndexChanged事件,用VB怎么写代码?谢谢!

问题描述 datagrid中的编辑模板列中有个dropdownlist控件,并且已经绑定了数据,我想选择下拉框中某项数据时,能够触发SelectedIndexChanged事件,请问前台和后台的代码怎么写?谢谢! 解决方案 解决方案二:在GridView的DataBound事件中初始化DropDownList的SelectedIndexChanged事件解决方案三:这个很麻烦的.UP解决方案四:引用1楼showlie的回复: 在GridView的DataBound事件中初始化DropDownLi

C#--SelectedIndexChanged事件, SelectedValueChanged事件和SelectionChangeCommitted事件的区别及联系

三个事件的触发条件和区别 SelectedIndexChanged事件 索引改变时即触发吗,可以通过编程触发 SelectedValueChanged事件 值改变时触发,可以通过编程触发 SelectionChangeCommitted事件 在设定datasource和displaymember和valuemember时,以及手动改变combobox索引和值时都不触发该事件, 只是在界面选择combobox不同值时触发,即只有通过界面点击修改combobox的值才会触发此事件 区别 1.Sele

[紧急求助]asp.net的ajax设置超时后触发的事件

问题描述 [紧急求助][高分]asp.net的ajax设置超时后触发的事件asp.net的ajax中的AsyncPostBackTimeout设置超时为20秒,让它快点超时(因为有的客户等不了那么久),但它超时后只在浏览器的左下角出现错误提示,不会触发它的AsyncPostBackError的错误事件.用了try,catch只能捕获到错误,不能捕获超时.请高手帮帮忙 解决方案 解决方案二:AjaxPro.timeoutPeriod=1000*60*60;//单位是毫秒可以在页面Load事件中通过

在Gridview中添加新的linkbutton而不触发rowcommand事件

问题描述 这是我修改前的Gridview界面,点击"查看",会触发rowcommand事件,弹出下载页面:我想在其中加一个linkbutton,点击时会跳转到某一aspx页面,如下图现在问题是添加之后总是触发rowcommand事件,弹出下载页面,即跟"查看"按钮效果是一样的.所以请问,如何在Gridview中添加一个linkbutton,点击该linkbutton,会跳转到某一aspx页面,代码如何写? 解决方案 解决方案二:贴一下更新的html代码解决方案三:

vs2008中为何触发不到gridview的onselectedindexchanged事件

问题描述 如题,我就郁闷了,调试的时候它根本就没有触发gridview的onselectedindexchanged事件,到底怎么回事?长这么大还第一次碰见,大侠们,看你们的了,帮帮小弟啊!!! 解决方案 解决方案二:有没有注册啊design.cs有没有+=的那行代码啊解决方案三:是不是在控件的事件那个对应事件没有指定到这个方法,有的时候会这样解决方案四:引用1楼xuexiaodong2009的回复: 有没有注册啊design.cs有没有+=的那行代码啊 什么意思啊,我的那个Default.as

asp.net页面触发事件panel滚动条高度不变的实现方法_实用技巧

此文是为解决asp.net页面按钮点击触发事件后panel滚动条非自动回到顶端的解决方案,对于页面触发一个事件后,panel滚动条重新回到顶端,做下面的工作每次都要往下拉一下,特别是选择TreeView的时候,这个问题非常头疼,受到this.MaintainScrollPositionOnPostBack = true;的启示有感而发. 原理是在点击时保存panel滚动条的位置,页面触发事件完成后加载时重新赋值.保证页面每次点击都保存,就包含所有的按钮和别的点击事件. 步骤: 1.脚本 <hea