最近项目中用到了Linkbutton,说实话以前不怎么用这个控件,一般都是用HyperLink。
现在才发现LinkButton与HyperLink有很大的差别。
用法上最大的区別是LinkButton有Click事件,支持回发﹐而HyperLink沒有。
LinkButton可以在链接到新页面前﹐做一些其他处理﹐如拼写URL。
而HyperLink像一个超链接,不会回发,和手写Html中的A标签没啥两样。
使用上﹐前者URL参数在PostBackUrl中指定﹐后者在NavigateUrl中指定。
如果LinkButton不声明Click事件﹐通过客户端的代码可以看到是生成了是超链接﹐不过链接中有JS代码﹐是专门为回发而设置的。
如果有PostBackUrl的情況下,在声明了Click事件后则不会回发。要让其linkButton产生回发,则不能在代码中指定Url.
下面是linkbutton回发时传参的代码:
前台代码:
后台代码:
protected void lbt_Del_Click(object sender, EventArgs e)
((LinkButton)sender).CommandArgument;
.....
}