使用DataGrid动态绑定DropDownList

原创 2004年05月31日 11:39:00

使用DataGrid动态绑定DropDownList

hbzxf (阿好)
http://www.cnblogs.com/hbzxf

        简单的使用模板列绑定DropDownList,初学者想必都会了,但有时候,我们要做的就是在编辑的时候想让某一列定制为DropDownList,并且根据正常情况下显示的值自动变换DropDownList中所选的值,然后保存选择后的值到数据库或XML文件,其实要做到这样的功能并不难,只要我们学会使用DataGrid的DataGrid1_ItemDataBound事件就行了,跟我来做个例子。

        //检索数据库的函数
          public DataSet GetZcbd()
          {
            try
           {
            DataSet ds=new DataSet();   
            string searchString="select id,yy,bj from zc";
            da=new OleDbDataAdapter(searchString,conn);
            da.Fill(ds,"yy");    
             return ds;
           }
           catch
           {
            return null;    
           }  
          }

         //绑定DataGrid   
        private void BindGrid()
          {
           DataSet ds = new DataSet();
           ds = us.GetZcbd();
           if (ds!=null)
           {
            this.DataGrid1.DataSource = ds;
            this.DataGrid1.DataBind();
           }
           else
           {
            msg.Alert("加载数据错误!",Page);
           }
          }
       
        绑定好DataGrid以后,设定模板列,让其正常显示下为Label,并绑定为数据库中一ID值,在编辑状态下为DropDownList,并绑定为数据库中一Name值,我们现在要做的就是当我们选择编辑时根据Label的值自动从数据库中取出编号为ID值的姓名,并用DropDownList默认选中。(注释:为了方便大家学习,我给出一个简单代码的例子,供大家参考)

          private void DataGrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
            {
             if (e.Item.ItemType == ListItemType.EditItem)
             {
                 DataRowView drv = (DataRowView)e.Item.DataItem;
              string current = drv["label1"].ToString();
              DropDownList ddl = (DropDownList)e.Item.FindControl("ddl");
              ddl.SelectedIndex = ddl.Items.IndexOf(ddl.Items.FindByValue(current));
             }
             if ((e.Item.ItemType == ListItemType.Item)||(e.Item.ItemType == ListItemType.AlternatingItem))
  
         {
              Label t = (System.Web.UI.WebControls.Label)e.Item.FindControl("label1");
              string current = this.BindDDL(int.Parse(t.Text));
              e.Item.Cells[1].Text = current;
             }
            }

            private string BindDDL(int ddd)
            {
             string sss = "";
             if (ddd==1)
             {
              sss="张三";
              return sss;
             }
             else
             {
                 sss="李四";
              return sss;
             }
            }

   注释:msg为一个类似WinForm的messagebox对话框,不必理会。可以使用label.Text代替

代码很乱,敬请谅解!

2004.4.2

使用DataGrid动态绑定DropDownList

 使用DataGrid动态绑定DropDownList         简单的使用模板列绑定DropDownList,初学者想必都会了,但有时候,我们要做的就是在编辑的时候想让某一列定制为DropDo...
  • etilm
  • etilm
  • 2006年08月17日 14:14
  • 716

使用DataGrid动态绑定DropDownList

使用DataGrid动态绑定DropDownList hbzxf (阿好) http://www.cnblogs.com/hbzxf 简单的使用模板列绑定DropDownList,初学者想必都会了,但...
  • xwqjamky
  • xwqjamky
  • 2005年10月14日 08:41
  • 503

dropDownList 控件动态绑定数据和读取

1、绑定: 方法一:                IList orgs = itls.GetAllOrganization();                 this.ddl.Da...
  • u010678947
  • u010678947
  • 2013年11月12日 08:54
  • 1015

DataGrid动态绑定DropDownList

 版权声明:CSDN是本Blog托管服务提供商。如本文牵涉版权问题,CSDN不承担相关责任,请版权拥有者直接与文章作者联系解决。AllowCustomPaging="True" AllowPaging...
  • xuandhu
  • xuandhu
  • 2004年11月09日 15:21
  • 1115

c#代码创建DropDownList数据绑定

 private DropDownList CreateColloer(集合)     {         DropDownList ddl = new DropDownList();  ...
  • u012803075
  • u012803075
  • 2014年11月07日 11:41
  • 266

编辑DataGrid时动态绑定DropDownList

 前台代码:  asp:DataGrid DataKeyField="id" id="DataGrid1" runat="server"  AutoGenerateColumns="False">  ...
  • chenyuling
  • chenyuling
  • 2007年04月10日 16:00
  • 993

动态绑定DropDownList

 也谈谈动态绑定dropdownlist(2)         利用dataset作为数据源来实现dataset的Item绑定。但是DataSet包含的内容和结构太多,我们只要求的是快速的绑定Drop...
  • MaleLionOfWakeUp
  • MaleLionOfWakeUp
  • 2006年09月11日 13:57
  • 2443

处理在DataGrid中的DropDownList的事件

DropDownList没有CommandName属性,所以不能用ItemCommand事件,不过你可以在DataGrid的模板列中加入的DropDownList控件(aspx):asp:Templa...
  • bill1315
  • bill1315
  • 2007年10月09日 15:31
  • 510

EasyUI 1.3.1 datagrid动态绑定列名和数据

很多网友对【easyui datagrid动态绑定列名和数据 】存在很多疑惑,实验后不能成功,这是因为不同版本的EasyUI源码不同。我就最新的版本的EasyUI 1.3.1做了示例,并简化了后台代码...
  • qing2005
  • qing2005
  • 2012年12月13日 08:51
  • 9587

动态绑定DATAGRID里的DropDownList

if(e.Item.ItemType==ListItemType.EditItem)   {    DataRowView drv=(DataRowView)e.Item.DataItem;    s...
  • byzcm
  • byzcm
  • 2005年04月18日 18:57
  • 677
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:使用DataGrid动态绑定DropDownList
举报原因:
原因补充:

(最多只允许输入30个字)