DataGrid问题,删除时点取消和确定都会删除,为什么?
aspx如下:
<asp:DataGrid id="DataGridAdmin" runat="server" AutoGenerateColumns="False" DataKeyField="Userid"
AlternatingItemStyle-Width="800" BorderColor="#CCCCCC" BorderStyle="None" BorderWidth="1px"
BackColor="White" CellPadding="3" Width="90%">
<FooterStyle ForeColor="#000066" BackColor="White"></FooterStyle>
<SelectedItemStyle Font-Bold="True" ForeColor="White" BackColor="#669999"></SelectedItemStyle>
<AlternatingItemStyle Width="800px"></AlternatingItemStyle>
<ItemStyle ForeColor="#000066"></ItemStyle>
<HeaderStyle Font-Bold="True" ForeColor="White" BackColor="DarkGray"></HeaderStyle>
<Columns>
<asp:TemplateColumn HeaderText="管理员">
<HeaderStyle Width="20%"></HeaderStyle>
<ItemTemplate>
<%#DataBinder.Eval(Container.DataItem,"Userid")%>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="最后登陆IP">
<HeaderStyle Width="20%"></HeaderStyle>
<ItemTemplate>
<%#DataBinder.Eval(Container.DataItem,"LastLoginIP")%>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="最后登陆时间">
<HeaderStyle Width="30%"></HeaderStyle>
<ItemTemplate>
<%#DataBinder.Eval(Container.DataItem,"LastLoginTime")%>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="登陆次数">
<HeaderStyle Width="15%"></HeaderStyle>
<ItemTemplate>
<%#DataBinder.Eval(Container.DataItem,"LasLoginCount")%>
</ItemTemplate>
</asp:TemplateColumn>
<asp:TemplateColumn HeaderText="删除">
<HeaderStyle Width="15%"></HeaderStyle>
<ItemTemplate>
<asp:Button id="delbtn" Runat="server" Text="删 除" CommandName="Delete"></asp:Button>
</ItemTemplate>
</asp:TemplateColumn>
</Columns>
<PagerStyle HorizontalAlign="Left" ForeColor="#000066" BackColor="White" Mode="NumericPages"></PagerStyle>
</asp:DataGrid>
CS如下:
private void Page_Load(object sender, System.EventArgs e)
{
// 在此处放置用户代码以初始化页面
if(!IsPostBack)
{
GridBind();
}
}
private void GridBind()
{
T_Admin t_admin = new T_Admin();
DataSet ds = t_admin.GetList("");
this.DataGridAdmin.DataSource=ds;
this.DataGridAdmin.DataBind();
}
#region Web 窗体设计器生成的代码
override protected void OnInit(EventArgs e)
{
//
// CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
//
InitializeComponent();
base.OnInit(e);
}
/// <summary>
/// 设计器支持所需的方法 - 不要使用代码编辑器修改
/// 此方法的内容。
/// </summary>
private void InitializeComponent()
{
this.DataGridAdmin.ItemCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGridAdmin_ItemCommand);
this.DataGridAdmin.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGridAdmin_ItemDataBound);
this.Load += new System.EventHandler(this.Page_Load);
}
#endregion
private void DataGridAdmin_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
{
Button btndel = (Button)e.Item.FindControl("delbtn");
if( btndel!=null)
{
btndel.Attributes.Add("onclick","return confirm('你确定要删除该管理员吗?');");
}
}
private void DataGridAdmin_ItemCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
{
if(e.CommandName.ToLower()=="delete")
{
string Userid = this.DataGridAdmin.DataKeys[e.Item.ItemIndex].ToString();
//new DMBlue.Blog.BLL.T_Admin().Delete(Userid);
Response.Write("<script>alert('删除了')</script>");
GridBind();
}
}
不知道为什么,点取消也会删除??