GridView1_RowCommand()中如何获取当前行
System.EventArgs不包含CommandName的定义,且找不到可接受类型为System.EventArgs的第一个参数的扩展方法
你把地方写错了
把Button1_Click的代码写到Button_Click中就行了。
你的代码中
button触发的是Button_Click事件而不是Button1_Click事件。
LZ明白了吗?
你把Button1_Click注释掉,代码在我机子上都是正常的。
是什么错误啊?贴出来看一下。
我帮你改了改,你看看
protected void Button_Click(object sender, CommandEventArgs e)
{
switch (e.CommandName)
{
case "New":
Response.Write("增加按钮");
break;
case "Modify":
Response.Write("修改按钮");
break;
case "Delete":
Response.Write("删除按钮");
break;
default:
Response.Write("默认按钮");
break;
}
}
单击button获取它在datalist 中行号和当前行所有控件的值
这个是3个办法!一:前台代码
' OnClick="imagebutton_onclick" runat="server" ValidationGroup='' />
后台代码
protected void imagebutton_onclick(object sender, ImageClickEventArgs e)
{
ImageButton lb = sender as ImageButton;
int count = Convert.ToInt32(lb.ValidationGroup); //这个是点击的行的索引 也就是行数
int id = Convert.ToInt32(lb.CommandArgument); //这个是点击的行的ID
Label lab=(Label)(DataList1.Items[count].FindControl("Label1"));
lab.Text=id.ToString();
}二:DataList中添加按钮,并为其添加 CommandArgument属性与CommandName属性...
' CommandName="del"/>
三:DataList有个事件OnItemCommand事件,事件在单击DataList控件中的任一按钮时引发...这样在单击当前行的按钮时就会触发事件并获得当前行的ID,进行删除操作啦....
protected void DataList1_ItemCommand(object source, DataListCommandEventArgs e)
{
if (e.CommandName == "del")
{
string myid = e.CommandArgument.ToString();
Response.Write("alert('" + myid + "')");
}
}
点击Datalist 中的Button 控件如何获取当前行的数据
如果你是写在ItemDataBound事件中,那么,可用
TextBox txt= (TextBox)e.Row.FindControl("TextBox控件ID"); 然后txt.Text即可取值
如果是写在其他的事件中,
for(int i=0;i<DataList1.Items.Count;i++)
{
TextBox aa = (TextBox)DataList1.Items[i].FindControl(“TextBox控件ID”);
然后再循环中用aa.Text即可取值
}
e.getActionCommand( );是什么意思
返回:标识此事件命令的字符串。返回与此动作相关的命令字符串。这使得"modal"组件可以由其当前的状态,通过此字符串来得到它能够产生的几个命令之一。例如,单个按钮可以在“显示详细信息”和“隐藏详细信息”之间切换。主要用于编程:概念说明、函数解释、用法详述见正文,这里补充一点:字符串在存储上类似字符数组,所以它每一位的单个元素都是可以提取的,如s=“abcdefghij”,则s[1]=“a”,s[10]="j",而字符串的零位正是它的长度,如s[0]=10,这可以给我们提供很多方便,如高精度运算时每一位都可以转化为数字存入数组。