CSDN首页 空间 新闻 论坛 Blog 下载 读书 网摘 搜索 .NET Java 视频 接项目 求职 在线学习 买书 程序员 通知
山寨机中的战斗机! 程序优化工程师到底对IT界有没有贡献
CSDN社区
搜索 收藏 打印 关闭
CSDN社区 >  .NET技术 >  ASP.NET

大家看看,这是怎么回事啊(解决马上给分)

楼主jan1010(我的爱情过了保鲜期了)2004-11-04 13:56:32 在 .NET技术 / ASP.NET 提问

我在datagrid里面新增了2个按钮列,一个是选择,一个是删除.可是现在我不管按选择还是删除都是执行选择的代码,如果吧选择的代码去掉了才执行删除的代码:  
  代码如下:  
  using   System;  
  using   System.Collections;  
  using   System.ComponentModel;  
  using   System.Data;  
  using   System.Drawing;  
  using   System.Web;  
  using   System.Web.SessionState;  
  using   System.Web.UI;  
  using   System.Web.UI.WebControls;  
  using   System.Web.UI.HtmlControls;  
  using   System.Data.SqlClient;  
  namespace   HomeSite  
  {  
  ///   <summary>  
  ///   Webjsqk   的摘要说明。  
  ///   </summary>  
  public   class   Webjsqk   :   System.Web.UI.Page  
  {  
  protected   System.Web.UI.WebControls.Button   Button1;  
  protected   System.Web.UI.WebControls.DataGrid   Dg_blxw;  
   
  private   void   Page_Load(object   sender,   System.EventArgs   e)  
  {  
  Dg_blxw.DataSource   =   Ds();  
  Dg_blxw.DataBind();  
   
  if(Convert.ToInt32(Session["flag"])==1)  
  {  
  Button1.Enabled   =   false;  
  }  
   
  }  
   
  public   DataSet   Ds()  
  {  
  string   Tj   =   Session["cmdID"].ToString();  
  string   Sql;  
  Sql   =   "select   *   from   ComRewardTb   where   ComID   =   '"+Tj+"'";  
  connClass   conn   =   new   connClass();  
  DataSet   DS   =   new   DataSet();  
  SqlDataAdapter   Adapter   =   new   SqlDataAdapter(Sql,conn.Conn());  
  SqlCommandBuilder   Builder   =   new   SqlCommandBuilder(Adapter);  
  Adapter.Fill(DS,"ComRewardTb");  
  return   DS;  
  }  
   
  #region   Web   窗体设计器生成的代码  
  override   protected   void   OnInit(EventArgs   e)  
  {  
  //  
  //   CODEGEN:   该调用是   ASP.NET   Web   窗体设计器所必需的。  
  //  
  InitializeComponent();  
  base.OnInit(e);  
  }  
   
  ///   <summary>  
  ///   设计器支持所需的方法   -   不要使用代码编辑器修改  
  ///   此方法的内容。  
  ///   </summary>  
  private   void   InitializeComponent()  
  {          
  this.Dg_blxw.ItemCommand   +=   new   System.Web.UI.WebControls.DataGridCommandEventHandler(this.Dg_blxw_ItemCommand);  
  this.Dg_blxw.DeleteCommand   +=   new   System.Web.UI.WebControls.DataGridCommandEventHandler(this.Dg_blxw_DeleteCommand);  
  this.Button1.Click   +=   new   System.EventHandler(this.Button1_Click);  
  this.Load   +=   new   System.EventHandler(this.Page_Load);  
   
  }  
  #endregion  
   
  private   void   Dg_blxw_DeleteCommand(object   source,   System.Web.UI.WebControls.DataGridCommandEventArgs   e)  
  {  
  string   Tj   =   Session["cmdID"].ToString();  
  string   Sql;  
  Sql   =   "select   *   from   ComRewardTb   where   ComID   =   '"+Tj+"'";  
  connClass   conn   =   new   connClass();  
  DataSet   DS   =   new   DataSet();  
  SqlDataAdapter   Adapter   =   new   SqlDataAdapter(Sql,conn.Conn());  
  SqlCommandBuilder   Builder   =   new   SqlCommandBuilder(Adapter);  
  Adapter.Fill(DS,"ComRewardTb");  
  int   Num   =   (int)e.Item.ItemIndex;  
  DS.Tables["ComRewardTb"].Rows[Num].Delete();  
  Adapter.Update(DS,"ComRewardTb");  
  Dg_blxw.DataSource   =   DS.Tables["ComRewardTb"];  
  Dg_blxw.DataBind();  
  }  
   
  private   void   Button1_Click(object   sender,   System.EventArgs   e)  
  {  
  Response.Redirect("Webjsqkadd.aspx");  
  }  
   
  private   void   Dg_blxw_ItemCommand(object   source,   System.Web.UI.WebControls.DataGridCommandEventArgs   e)  
  {  
  int   Num;  
  TableRow   tr=e.Item;  
  Num   =   Convert.ToInt32(tr.Cells[0].Text);  
  Response.Redirect("Webjsqkadd.aspx?autoid="   +   Num   +   "&state=1");  
  }  
  }  
  }  
  问题点数:100、回复次数:6Top

1 楼minghui000(沉迷网络游戏)回复于 2004-11-04 14:11:21 得分 10

up   +   接分   +   学习Top

2 楼swzlxm(守望者)回复于 2004-11-04 14:11:52 得分 20

这么长不想看,给你写几句,问题就能解决:  
   
  增加接钮:把按钮的COMMANDNAME属性设为"?????";  
   
  在DATAGRID的ITEM_COMMAND事件里:  
   
  IF   (E.COMMANDNAME=="?????")  
  {  
  ........  
  }  
  ELSE   IF(E.COMMANDNAME=="??????")  
  {  
  ............  
  }Top

3 楼fangwancong(聪头.珠海)回复于 2004-11-04 14:13:57 得分 20

ItemCommand事件中加入:  
  if   (   e.CommandName   ==   "Select")  
  {  
        //*******  
        执行选择的代码  
        ********//  
  }Top

4 楼guying999(求知)回复于 2004-11-04 14:15:15 得分 20

参考:  
  http://dotnet.aspx.cc/ShowDetail.aspx?id=8ADE535F-AD40-4DE3-A962-A64B4FAF12C4Top

5 楼rickjelly2004(每逢佳节倍思亲-------------快乐生活)回复于 2004-11-04 14:18:13 得分 20

private   void   Dg_blxw_ItemCommand(object   source,   System.Web.UI.WebControls.DataGridCommandEventArgs   e)  
  {  
  if   (e.commandname=="Delete")  
  {  
  int   Num;  
  TableRow   tr=e.Item;  
  Num   =   Convert.ToInt32(tr.Cells[0].Text);  
  Response.Redirect("Webjsqkadd.aspx?autoid="   +   Num   +   "&state=1");  
  }  
   
  if   (e.commandname=="Select")  
  {  
  }  
  }  
  }  
  }  
  Top

6 楼huwei2003(凡)回复于 2004-11-04 14:19:38 得分 10

你在DataGrid的事件中把EditCommand和DeleteCommand的事件分开来写就行了Top

相关问题

  • 给不了分,是怎么回事?
  • 给不出分了。怎么回事。
  • 我的IE不能够跳出新窗口,怎么回事啊,马上给分啊
  • 为什么我忽然只能给24分了,怎么回事?
  • 有没有知道是怎么回事的,只能给25分
  • 谁知道CSDN的帖子给分是怎么回事?
  • 怎么回事儿?在线求解!!!立刻给分!
  • 数 据 类 型 number(p,s)怎 么 回 事 ? 解 决 立 即 给 分 ! ! ! !
  • 分能给自己? 这是怎么回事?郁闷..
  • 我去,这是怎么回事?解决立即给分

关键词

  • 代码
  • ds
  • 执行
  • 选择
  • blxw
  • comrewardtb
  • dg
  • connclass
  • webjsqkadd
  • commandname

得分解答快速导航

  • 帖主:jan1010
  • minghui000
  • swzlxm
  • fangwancong
  • guying999
  • rickjelly2004
  • huwei2003

相关链接

  • CSDN .NET频道
  • .NET类图书
  • C#类图书
  • .NET类源码下载

广告也精彩

反馈

请通过下述方式给我们反馈
反馈
提问
网站简介|广告服务|VIP资费标准|银行汇款帐号|网站地图|帮助|联系方式|诚聘英才|English|问题报告
北京创新乐知广告有限公司 版权所有, 京 ICP 证 070598 号
世纪乐知(北京)网络技术有限公司 提供技术支持
Copyright © 2000-2008, CSDN.NET, All Rights Reserved
GongshangLogo