菜鸟提问 ,急急急急急急急急急急急急急急急 本帖最后由 andesen 于 2009-10-17 14:00:33 编辑 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 在CancelCommand事件里面这样就可以获取你点击行的值变量名=(e.Item.FindControl("控件Id") as Label).Text http://topic.csdn.net/u/20091017/09/1f48d3ae-21bb-4112-9873-dc7e3b9de8df.html类似这样处理就行了 后台绑定事件中增加Label的点击事件,将另外一个Label的客户端id获取,通过js获取其值就行了 不好意思这个是DataList里面的 gridview里有个叫做RowComand事件,用它吧如果你要取得的列里的那个控件是在模板列里的,可以用:string description = ((TextBox)this.grid.Rows[e.RowIndex].FindControl("descriptionTextBox")).Text;取出,当然,上面我的是TextBox控件,你自己转为相应的lable控件如果不是放在自定义模板里的,则用:string name = ((TextBox)this.grid.Rows[e.RowIndex].Cells[0].Controls[0]).Text;//当然,这个代码不是在RowComand事件中的,但是,在RowComand事件中会有自己的参数,也就是e或者object sender你自己用好这两个参数,找到当前行记录的行索引,可以根据VS的智能感知能力提示功能,一个个地试如果e参数无效,就用object sender,你先把它直接ToString()显示出来看下是什么控件对象,然后再强制把它转换为相应的对象就可以了,比如GriVewRow gvr=(GriVewRow) sender;string name = ((TextBox)this.grid.Rows[gvr.RowIndex].Cells[0].Controls[0]).Text; GriVewRow gvr=(GriVewRow) sender;sender那个事件的sender是GridViewRow? RowCommand的那个sender是个GridView对象 O_O这样子啊,那这样吧,你在GridView控件里另外放一列点击按钮,比如名为Btton1 的Btton按钮用户点击这个按钮时,执行你要的操作。人增加下面事件:protected void Gv_news_RowCommand(object sender, GridViewCommandEventArgs e) { //这个事件是在用户点击某一行按钮时触发的 //根据触按钮的参数取得当前记录行所在的索引号 int rowIndex = int.Parse(e.CommandArgument); //下面想怎么操作是你自己的事了 } protected void Gv_news_RowDataBound(object sender, GridViewRowEventArgs e) { //这个事件呢,是在每一行记录生成时马上触发的,所以你有多少行记录,这个事件就会执行多少次 //给命令按钮(点击事件的那个按钮,名字自己改为自己的)设计触发参数为当前行索引号 ((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandArgument=e.Row.RowIndex.ToString(); } O_O!!!protected void Gv_news_RowCommand(object sender, GridViewCommandEventArgs e) { int rowIndex = int.Parse(e.CommandName); //下面想怎么操作是你自己的事了 } protected void Gv_news_RowDataBound(object sender, GridViewRowEventArgs e) { ((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandName=e.Row.RowIndex.ToString(); } ((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandArgument=e.Row.RowIndex.ToString(); 此处报错 楼主,换为这个代码,奶奶的,都快下班了,你居然还没解决protected void Gv_news_RowCommand(object sender, GridViewCommandEventArgs e) { int rowIndex = int.Parse(e.CommandName); //下面想怎么操作是你自己的事了 } protected void Gv_news_RowDataBound(object sender, GridViewRowEventArgs e) { ((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandName=e.Row.RowIndex.ToString(); } 绑定时 ((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandName=e.Row.RowIndex.ToString(); 索引超出范围。必须为非负值并小于集合大小。 protected void Gv_news_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType==DataControlRowType.DataRow) ((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandName=e.Row.RowIndex.ToString(); //我亲自试了下,原来我忘了写判断了,控件除了生成记录行外,还包括头部和脚部,晕死,好了这回,应该没什么问题了 } 日,下班前再次确认已是无误的代码:protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e) { if (e.Row.RowType == DataControlRowType.DataRow) { Button bt = (Button)e.Row.FindControl("Button1"); bt.CommandName = e.Row.RowIndex.ToString(); } } protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e) { Response.Write(e.CommandName); } 类型转换错误 如何在html 里批量实现支持c# 的 代码的 展开 缩进 .net网站 数据库建表问题 TextBox获得焦点的问题 [进来]一个按钮创建另外一个按钮,这个按钮的事件不激发.. listbox如何绑定数据 VB.NET and C# 语法比较手册 网页间传值问题 比如说A页网B页传值 aa.aspx?yhm="人民大会堂" b页就只能收到"人民大会" asp.net中, 怎么给ListBox绑定数据,数据来自数据库,listbox的值和文本来自表的两个字段 数据连接字符写在WEB。CONFIG文件中怎么写的 ?? 关于xml的问题 郁闷!在内容页面怎样过滤图片啊
string name = ((TextBox)this.grid.Rows[gvr.RowIndex].Cells[0].Controls[0]).Text;
sender那个事件的sender是GridViewRow?
用户点击这个按钮时,执行你要的操作。人增加下面事件:protected void Gv_news_RowCommand(object sender, GridViewCommandEventArgs e)
{
//这个事件是在用户点击某一行按钮时触发的
//根据触按钮的参数取得当前记录行所在的索引号
int rowIndex = int.Parse(e.CommandArgument);
//下面想怎么操作是你自己的事了
}
protected void Gv_news_RowDataBound(object sender, GridViewRowEventArgs e)
{
//这个事件呢,是在每一行记录生成时马上触发的,所以你有多少行记录,这个事件就会执行多少次
//给命令按钮(点击事件的那个按钮,名字自己改为自己的)设计触发参数为当前行索引号
((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandArgument=e.Row.RowIndex.ToString();
}
{
int rowIndex = int.Parse(e.CommandName);
//下面想怎么操作是你自己的事了
}
protected void Gv_news_RowDataBound(object sender, GridViewRowEventArgs e)
{
((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandName=e.Row.RowIndex.ToString();
}
protected void Gv_news_RowCommand(object sender, GridViewCommandEventArgs e)
{
int rowIndex = int.Parse(e.CommandName);
//下面想怎么操作是你自己的事了
}
protected void Gv_news_RowDataBound(object sender, GridViewRowEventArgs e)
{
((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandName=e.Row.RowIndex.ToString();
}
{
if (e.Row.RowType==DataControlRowType.DataRow)
((Button)this.grid.Rows[e.Row.RowIndex].FindControl("Button1")).CommandName=e.Row.RowIndex.ToString();
//我亲自试了下,原来我忘了写判断了,控件除了生成记录行外,还包括头部和脚部,晕死,好了这回,应该没什么问题了
}
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
{
if (e.Row.RowType == DataControlRowType.DataRow)
{
Button bt = (Button)e.Row.FindControl("Button1");
bt.CommandName = e.Row.RowIndex.ToString();
} }
protected void GridView1_RowCommand(object sender, GridViewCommandEventArgs e)
{
Response.Write(e.CommandName);
}