asp.net中如何给按钮添加事件
2007-02-27 12:08
447 查看
ButtonType obj = (ButtonType) e.Row.Cells[commandFieldIndex].Controls[controlIndex];
ButtonType是被CommandField使用的一种按钮类型,可以是Button,LinkButton,或者ImageButton。默认情况下,CommandField使用LinkButton,但也可以通过CommandField的ButtonType属性来定制。CommandFieldIndex是CommandField在GridView中Columns集合中的原始索引,而controlIndex是删除按钮在CommandField的Controls集合中的索引。controlIndex的值由按钮在CommandField中和其他按钮的相对位置决定。例如,如果在CommandField中只有一个删除按钮,那么它的索引就是0。然而,如果在删除按钮前面还有一个编辑按钮,那么索引值是2。因为在删除按钮前面有两个控件,一个是编辑按钮,另一个是LiteralControl,用来隔离编辑按钮和删除按钮。
使用TemplateFields
ButtonType obj = (ButtonType) e.Row.FindControl("controlID");
<asp:TemplateColumn HeaderText="删除">
<ItemTemplate>
<asp:ImageButton ID="delete" Runat="server" CommandName="DelInfo" ImageAlign="Middle" ImageUrl="Images/btn_del.gif"></asp:ImageButton>
</ItemTemplate>
</asp:TemplateColumn>
private void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
...{
if (e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
...{
DataRowView drv=(DataRowView)e.Item.DataItem;
ImageButton l=(ImageButton)e.Item.Cells[4].FindControl("delete");
l.Attributes.Add("onclick","javascript:return confirm('你确认要删除"+drv.Row["SName"].ToString()+"吗?')");
}
}
注意:"SName"确认中要添加确认数据的列名,此例中用的是ImageButton其它按钮与此类似。
再说2.0的GridView,添加GridView的RowDataBound事件并添加以下类似代码
<asp:CommandField ShowDeleteButton="True" />
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
...{
if (e.Row.RowType == DataControlRowType.DataRow)
e.Row.Cells[10].Attributes.Add("onclick", "javascript:return confirm('你确认要删除"" + e.Row.Cells[1].Text + ""吗?')");
}
ButtonType是被CommandField使用的一种按钮类型,可以是Button,LinkButton,或者ImageButton。默认情况下,CommandField使用LinkButton,但也可以通过CommandField的ButtonType属性来定制。CommandFieldIndex是CommandField在GridView中Columns集合中的原始索引,而controlIndex是删除按钮在CommandField的Controls集合中的索引。controlIndex的值由按钮在CommandField中和其他按钮的相对位置决定。例如,如果在CommandField中只有一个删除按钮,那么它的索引就是0。然而,如果在删除按钮前面还有一个编辑按钮,那么索引值是2。因为在删除按钮前面有两个控件,一个是编辑按钮,另一个是LiteralControl,用来隔离编辑按钮和删除按钮。
使用TemplateFields
ButtonType obj = (ButtonType) e.Row.FindControl("controlID");
<asp:TemplateColumn HeaderText="删除">
<ItemTemplate>
<asp:ImageButton ID="delete" Runat="server" CommandName="DelInfo" ImageAlign="Middle" ImageUrl="Images/btn_del.gif"></asp:ImageButton>
</ItemTemplate>
</asp:TemplateColumn>
private void DataGrid_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
...{
if (e.Item.ItemType==ListItemType.Item || e.Item.ItemType==ListItemType.AlternatingItem)
...{
DataRowView drv=(DataRowView)e.Item.DataItem;
ImageButton l=(ImageButton)e.Item.Cells[4].FindControl("delete");
l.Attributes.Add("onclick","javascript:return confirm('你确认要删除"+drv.Row["SName"].ToString()+"吗?')");
}
}
注意:"SName"确认中要添加确认数据的列名,此例中用的是ImageButton其它按钮与此类似。
再说2.0的GridView,添加GridView的RowDataBound事件并添加以下类似代码
<asp:CommandField ShowDeleteButton="True" />
protected void GridView1_RowDataBound(object sender, GridViewRowEventArgs e)
...{
if (e.Row.RowType == DataControlRowType.DataRow)
e.Row.Cells[10].Attributes.Add("onclick", "javascript:return confirm('你确认要删除"" + e.Row.Cells[1].Text + ""吗?')");
}
相关文章推荐
- asp.net中,如何给按钮增加JS事件
- asp.net中如何回车触发指定按钮的事件(实现按回车提交)
- 在asp.net中,如何回车触发指定按钮的事件?
- [导入]在asp.net中,如何回车触发指定按钮的事件?
- asp.net如何实现按回车键就执行按钮的Click()事件的办法
- asp.net C#动态添加创建生成button按钮控件没有触发执行响应click绑定事件处理
- 在asp.net中,如何回车触发指定按钮的事件
- asp.net中,如何给按钮增加JS事件
- ...后台代码中如何调用 javascript 函数的问题! - ASP.NET专题(按钮事件中调用JS文件中函数)
- 用一个例子讲述如何向ASP.NET Web服务器按钮控件添加客户端脚本
- asp.net中如何回车触发指定按钮的事件
- asp.net如何给按钮加回车的事件?
- 在asp.net中,如何回车触发指定按钮的事件
- ...后台代码中如何调用 javascript 函数的问题! - ASP.NET专题(按钮事件中调用JS文件中函数)
- 在asp.net中,如何回车触发指定按钮的事件?
- asp.net中服务器控件如何添加客户端的js事件?
- asp.net:在GridView中添加一列按钮,并实现按钮事件
- ASP.NET - 如何:向 ASP.NET 网页中添加登录按钮
- asp.net 按钮动态添加事件
- asp.net中如何回车触发指定按钮的事件(实现按回车提交)