TemplateColumn列中的Button事件!在线等~~~~~~ 我在DataGrid的TemplateColumn列中放置了一个HTML的Button,并设定为Runat=server...现在我如何可以在.cs页面中响应此Button的事件?? 解决方案 » 免费领取超大流量手机卡,每月29元包185G流量+100分钟通话, 中国电信官方发货 <asp:TemplateColumn><ItemTemplate><input type ="button" runat ="server" value ="Select" onserverclick="Button1_ServerClick" ></ItemTemplate></asp:TemplateColumn>public void Button1_ServerClick(object sender, System.EventArgs e){ Response.Write ("button");} 前台:<input type=button id="Del" onserverclick="XXX" runat=server>后台:public void XXX(object sender, System.EventArgs e){///your code} 那么我又如何能在事件中取得对应的DataGrid行上的值呢? 前台:<asp:Button ID="Del" CommandName="XXX" Runat="server" Text="删除"></asp:Button>后台:添加ItemCommand事件private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e){if(e.CommandName=="Edit"){string id=e.Item.Cells[0].Text;///}{ 我用的是HTML的Button上面没有CommandName的属性! 一定要用Html的,不能用服务器的? 前台:<asp:Button ID="btn" CommandName="XXX" Runat="server" Text="XXX"></asp:Button>后台:添加ItemCommand事件private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e){if(e.CommandName=="XXX"){string s=((DataGridItem)e.Parent.Parent).Cell[0].Text;//string s=((DataGridItem)e.NamingContainer).Cell[0].Text;也可以}} 说错了string s=((DataGridItem)((Button)sender).Parent.Parent).Cell[0].Text;//string s=((DataGridItem)((Button)sender).NamingContainer).Cell[0].Text;也可以 设置Button的ID="htmlBtnID" ,CommandName="go";private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e){if( e.CommandName="go" ) //判断是否点击了那html Button { //在此添加你所需要的代码 }} 前面没有说清楚,如果你没有用itemcommand,仅仅是用一个按钮在后台注册click事件的话(一楼的方法)public void Button1_Click(object sender, System.EventArgs e){string s=((DataGridItem)((Button)sender).Parent.Parent).Cell[0].Text;//第一个parent得到cell第二个parent才能得到行//string s=((DataGridItem)((Button)sender).NamingContainer).Cell[0].Text;也可以}如果你是用itemcommand的话private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e){if(e.CommandName=="XXX"){string s=e.Item.Cells[0].Text}} czsxj(知道一点) ,LoveCherry(论成败,人生豪迈;大不了,重头再来!^_^) 这个方法还是挺好的 仅仅是用一个按钮在后台注册click事件的话public void Button1_Click(object sender, System.EventArgs e){string s=((DataGridItem)((HtmlInputButton)sender).NamingContainer).Cells[1].Text;} 删除确认问题!! vs2008单元测试 C# MVC 中获取checkboxfor 的值 怎么手动添加FLASH 用winform提交web表单 紧急求助:在二级域名下登录时出现无法验证数据的错误?头晕,哪位大哥知道是啥原因? [请教]:一个困扰了很久的问题...用户控件... 一个关于 DataGrid 中显示数据的问题 个人注册cn的域名行吗?大家给点意见 DataGrid中的换行问题。 帮我看看这几行(出自Duwamish7中) 请教:安装部署完IIS、Framework后,运行程序,有个Treeview模块程序提示线程正被中止!!急
<ItemTemplate>
<input type ="button" runat ="server" value ="Select" onserverclick="Button1_ServerClick" >
</ItemTemplate>
</asp:TemplateColumn>
public void Button1_ServerClick(object sender, System.EventArgs e)
{
Response.Write ("button");
}
<input type=button id="Del" onserverclick="XXX" runat=server>
后台:
public void XXX(object sender, System.EventArgs e)
{
///your code
}
<asp:Button ID="Del" CommandName="XXX" Runat="server" Text="删除"></asp:Button>
后台:添加ItemCommand事件
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName=="Edit")
{
string id=e.Item.Cells[0].Text;
///
}
{
<asp:Button ID="btn" CommandName="XXX" Runat="server" Text="XXX"></asp:Button>
后台:添加ItemCommand事件
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName=="XXX")
{
string s=((DataGridItem)e.Parent.Parent).Cell[0].Text;
//string s=((DataGridItem)e.NamingContainer).Cell[0].Text;也可以
}
}
string s=((DataGridItem)((Button)sender).Parent.Parent).Cell[0].Text;
//string s=((DataGridItem)((Button)sender).NamingContainer).Cell[0].Text;也可以
{
if( e.CommandName="go" ) //判断是否点击了那html Button
{
//在此添加你所需要的代码
}
}
public void Button1_Click(object sender, System.EventArgs e)
{
string s=((DataGridItem)((Button)sender).Parent.Parent).Cell[0].Text;//第一个parent得到cell第二个parent才能得到行
//string s=((DataGridItem)((Button)sender).NamingContainer).Cell[0].Text;也可以
}如果你是用itemcommand的话
private void DataGrid1_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName=="XXX")
{
string s=e.Item.Cells[0].Text
}
}
LoveCherry(论成败,人生豪迈;大不了,重头再来!^_^) 这个方法还是挺好的
public void Button1_Click(object sender, System.EventArgs e)
{
string s=((DataGridItem)((HtmlInputButton)sender).NamingContainer).Cells[1].Text;
}