如何触发DataGrid中的SelectedIndexChanged事件?急! 我双击DataGrid控件,编写好了SelectedIndexChanged事件,可我不知道该如何编写相应的程序去触发这个事件,而且DataGrid中没有AutoPostBack属性可设置.请大虾指点! 或是什么地方有这方面的源码下载的?谢谢! 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 DataGrid控件没有这个SelectedIndexChanged事件吧.再说有的话,也应是服务器上执行的事件,不会实时发生. GridView倒是有GridView.SelectedIndexChanged 事件不过它是发生在单击某一行的“选择”按钮,GridView 控件对相应的选择操作进行处理之后。 DataGrid怎么可能没有SelectedIndexChanged事件呢!!???请打开VS自己试试看,我想只要做过.net的人都知道.请精通.net的大虾帮忙,不甚感激. 怎么我这里的DataGrid没有SelectedIndexChanged这个事件呢?我用的VS2005 无论是Asp.NET还是WinForm都没有这个SelectedIndexChanged事件啊... Private Sub dg_main_SelectedIndexChanged(ByVal sender As Object, ByVal e As System.EventArgs) Handles dg_main.SelectedIndexChanged的确是有,webform下 DataList的SelectedIndexChanged到是用的比较多...MSDN如是说:DataGrid的SelectedIndexChanged在两次服务器发送之间,在数据列表控件中选择了不同的项时发生。(从 BaseDataList 继承。) http://www.nidewang.com/dedecmsv3_0_1/html/wangzhanjishu/2006/1111/503.html看看这个,说实话,真没用到过,他里面的例子用itemcommand也可以实现 可以对DataGrid 每一行进行JS 绑定,点了一行,触发JS,接下来看你自己咯。 大致是,首先写一个.cs文件:public delegate void myDataGridDblClickedHandler(int rowIndex);public class myDataGrid : DataGrid,IPostBackEventHandler { public event myDataGridDblClickedHandler DblClicked; protected override void OnPreRender(EventArgs e) { if (DblClicked != null) foreach (DataGridItem item in this.Items) item.Attributes["dblclick"] = this.Page.ClientScript.GetPostBackEventReference( this, "dblclick:" + item.ItemIndex.ToString()); base.OnPreRender(e); } public void RaisePostBackEvent(string eventArgument) { if(eventArgument.StartsWith("dblclick:") && DblClicked !=null) DblClicked(int.Parse(eventArgument.Substring(9))); }}然后不要使用asp.net的DataGrid,使用你自己的。 谢谢,加一选择按钮是可以了,如果想我直接点击DataGrid上面的每一行能触发这个事件,如何做呢? 这个自己的 myDataGrid 控件比asp.net的DataGrid多出来一个 DblClicked 事件,跟你问题中的思路很像。其实很多时候,你不应该在用的时候才想到去如何凑一个程序,而是多多考虑如何把工具箱中的东西直接变成更顺手的。 用myDataGrid 控件显示数据列表,能获取每行的数据ID吗?我采用onclick事件单击某行怎么获取每行的iD 求一个小程序,急!!!! Session突然全部失效,所有用户的都失效! 求教如何提高全文搜索网站的效率 50分请教:向数据库录入数据,显示为乱码 SqlDataReader dr = commd.ExecuteReader();问题??? ####判断当前日期是否大于2006年5月1日要怎么写谢谢 求救!!!关于js和RegularExpressionValidator问题 iframe 动态连接 .mht 诸位兄弟姐妹辛苦了!!! 用户 'www\ASPNET' 登录失败,我还是不懂怎么解决,急! asp.net里web标准问题 怎么样用JS来表达表格中的某行某列?我只能找到某行
再说有的话,也应是服务器上执行的事件,不会实时发生.
不过它是发生在单击某一行的“选择”按钮,GridView 控件对相应的选择操作进行处理之后。
DataGrid的SelectedIndexChanged在两次服务器发送之间,在数据列表控件中选择了不同的项时发生。(从 BaseDataList 继承。)
看看这个,说实话,真没用到过,他里面的例子用itemcommand也可以实现
{ public event myDataGridDblClickedHandler DblClicked; protected override void OnPreRender(EventArgs e)
{
if (DblClicked != null)
foreach (DataGridItem item in this.Items)
item.Attributes["dblclick"] = this.Page.ClientScript.GetPostBackEventReference(
this, "dblclick:" + item.ItemIndex.ToString());
base.OnPreRender(e);
} public void RaisePostBackEvent(string eventArgument)
{
if(eventArgument.StartsWith("dblclick:") && DblClicked !=null)
DblClicked(int.Parse(eventArgument.Substring(9)));
}
}然后不要使用asp.net的DataGrid,使用你自己的。