DataGrid1_ItemDataBound[通俗易懂]

DataGrid1_ItemDataBound[通俗易懂]usingSystem;usingSystem.Collections;usingSystem.ComponentModel;usingSystem.Data;usingSystem.Drawing;usingSystem.Web;usingSystem.Web.SessionState;usingSystem.Web.UI;usingSystem.Web.UI.WebContr

大家好,又见面了,我是你们的朋友全栈君。如果您正在找激活码,请点击查看最新教程,关注关注公众号 “全栈程序员社区” 获取激活教程,可能之前旧版本教程已经失效.最新Idea2022.1教程亲测有效,一键激活。

Jetbrains全系列IDE稳定放心使用

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 Microsoft.ApplicationBlocks.Data;

namespace test
{

 /// <summary>
 /// WebForm6 的摘要说明。
 /// </summary>
 public class WebForm6 : System.Web.UI.Page
 {

  protected System.Web.UI.WebControls.DataGrid DataGrid1;
  protected string conn=test.conn;
 
  private void Page_Load(object sender, System.EventArgs e)
  {

   // 在此处放置用户代码以初始化页面
   if(!IsPostBack)
   {

    bind();
   }
  }

  #region Web 窗体设计器生成的代码
  override protected void OnInit(EventArgs e)
  {

   //
   // CODEGEN: 该调用是 ASP.NET Web 窗体设计器所必需的。
   //
   InitializeComponent();
   base.OnInit(e);
  }
  
  /// <summary>
  /// 设计器支持所需的方法 – 不要使用代码编辑器修改
  /// 此方法的内容。
  /// </summary>
  private void InitializeComponent()
  {   
   this.DataGrid1.CancelCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_CancelCommand);
   this.DataGrid1.EditCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_EditCommand_1);
   this.DataGrid1.UpdateCommand += new System.Web.UI.WebControls.DataGridCommandEventHandler(this.DataGrid1_UpdateCommand);
   this.DataGrid1.ItemDataBound += new System.Web.UI.WebControls.DataGridItemEventHandler(this.DataGrid1_ItemDataBound);
   this.Load += new System.EventHandler(this.Page_Load);

  }
  #endregion
  private void bind()
  {

   DataGrid1.DataSource=SqlHelper.ExecuteDataset(conn,CommandType.Text,”select c.c_name,a.a_id,a.a_name from article a,category c where a.c_id=c.c_id”);
   DataGrid1.DataBind();
  }

  private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)
  {

  
  }

  private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
  {

   if(e.Item.ItemType==ListItemType.EditItem)
   {

    DropDownList dl=(DropDownList)e.Item.FindControl(“ddl1”);
    dl.DataSource=SqlHelper.ExecuteDataset(conn,CommandType.Text,”select * from category”);
    dl.DataValueField=”c_id”;
    dl.DataTextField=”c_name”;
    dl.DataBind();
    string str=Convert.ToString(DataBinder.Eval(e.Item, “DataItem.c_name”));
    try
    {

     dl.Items.FindByText(str).Selected=true;
    }
    catch
    {

    }
   }
  }

  private void DataGrid1_EditCommand_1(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
  {

   this.DataGrid1.EditItemIndex=e.Item.ItemIndex;
   bind();
  }

  private void DataGrid1_UpdateCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
  {

   string uid=e.Item.UniqueID+”:”;//注意别遗漏冒号
   string c_name=Request.Form[uid+”ddl1″].ToString();
   string a_name=Request.Form[uid+”a_name”].ToString();
   //  string a_name=((TextBox)e.Item.Controls[2].Controls[0]).Text;
   int id=(int)DataGrid1.DataKeys[e.Item.ItemIndex];
   SqlHelper.ExecuteNonQuery(conn,CommandType.Text,”update article set c_id=”+c_name+”,a_name='”+a_name+”‘ where a_id=”+id);
   DataGrid1.EditItemIndex=-1;
   bind();
  }

  private void DataGrid1_CancelCommand(object source, System.Web.UI.WebControls.DataGridCommandEventArgs e)
  {

   DataGrid1.EditItemIndex=-1;
   bind();
  }
 }
}

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 举报,一经查实,本站将立刻删除。

发布者:全栈程序员-站长,转载请注明出处:https://javaforall.net/182338.html原文链接:https://javaforall.net

赞 (0)
全栈程序员-站长的头像全栈程序员-站长


相关推荐

  • 了解的近义词_draw calls

    了解的近义词_draw calls一、什么是DrawCallDrawCall的含义就是CPU调用图像编程接口,以命令GPU进行渲染的操作。CPU和GPU通过使用一个命令缓冲区实现并行工作。命令缓冲区包含一个命令队列,CPU向其中添加命令,GPU从中读取命令,添加和读取是相互独立的,因此使得CPU和GPU可以独立工作。命令缓冲区中的命令有很多种类,DrawCall就是其中一种。二、为什么Dr…

    2022年9月19日
  • java executeupdate_Java自学-JDBC execute与executeUpdate的区别

    java executeupdate_Java自学-JDBC execute与executeUpdate的区别JDBC中execute与executeUpdate的区别execute与executeUpdate的区别步骤1:相同点execute与executeUpdate的相同点:都可以执行增加,删除,修改packagejdbc;importjava.sql.Connection;importjava.sql.DriverManager;importjava.sql.SQLExceptio…

    2022年10月20日
  • eclipse下载安装步骤(eclipse下载安装步骤)

    Eclipse是JavaWeb开发最常用的工具,下面详细介绍一下如何下载安装最新版Eclipse。一、Eclipse下载1.输入网址:https://www.eclipse.org/downloads/我们会到官网中找到如下的下载按钮,但默认下载的是Windows操作系统的64位,我们点击DownloadPackages选择其他类型的下载包2.选择EclipseIDEf…

    2022年4月16日
  • 《这是全网最硬核redis总结,谁赞成,谁反对?》六万字大合集

    后端需要知道的关于redis的事,基本都在这里了。此文后续会改为粉丝可见,所以喜欢的请提前关注。你的点赞和评论是我创作的最大动力,谢谢。《三天给你聊清楚redis》第1天先唠唠redis是个啥(18629字)一、入门Redis是一款基于键值对的NoSQL数据库,它的值支持多种数据结构:字符串(strings)、哈希(hashes)、列表(lists)、集合(sets)、有序集合(sortedsets)等。•Redis将所有的数据都存放在内存中,所以它的读写性能十分惊人,.

    2022年4月9日
  • python unicode编码转换utf-8编码_不成问题的问题人物解析

    python unicode编码转换utf-8编码_不成问题的问题人物解析Unicode也叫万国码、单一码,是计算机科学领域里的一项业界标准,包括字符集、编码方案等。对于世界上所有的语言文字再unicode中都可以查看到。【汉】字的编码解释官网https://www.unicode.org/cgi-bin/GetUnihanData.pl?codepoint=6C49unicode编码就是为了统一世界上的编码,有一个统一的规范。但是它还存在一些问题。Unicode的问题需要注意的是,Unicode只是一个符号集,它只规定了符号的二进制代码,却没有规定这个二进制代码应该如何存

    2022年9月30日
  • spring cloud和dubbo的主要区别[通俗易懂]

    spring cloud和dubbo的主要区别[通俗易懂]1.springcloud有注册中心eurekaDubbo无用第三方的zookeeper2.Dubbo使用RPC通讯协议,提供序列化方式如下:Dubbo:Dubbo缺省协议采用单一长连接和NIO异步通讯,适合于小数据量大并发的服务调用,以及服务消费者机器数远大于服务提供者机器数的情况。RMI:RMI协议采用JDK标准的java.rmi.*实现,采用阻…

    2022年6月9日

发表回复

您的邮箱地址不会被公开。 必填项已用 * 标注

关注全栈程序员社区公众号