处理在DataGrid中的DropDownList的事件

原创 2007年10月09日 15:31:00
DropDownList没有CommandName属性,所以不能用ItemCommand事件,不过你可以在DataGrid的模板列中加入的DropDownList控件(aspx):
<asp:TemplateColumn HeaderText="车辆情况">
<ItemTemplate>
                  
<asp:DropDownList id="carinfolist" runat="server" OnSelectedIndexChanged="carinfolist_SelectedIndexChanged"
                     AutoPostBack
="True">
                       
<asp:ListItem Value="1" Selected="True">正常</asp:ListItem>
    
<asp:ListItem Value="0">停用</asp:ListItem>
    
</asp:DropDownList>
    
</ItemTemplate>
</asp:TemplateColumn>

注意:OnSelectedIndexChanged事件及AutoPostBack="True"

一、DropDownList的动态绑定,只需在DataGrid1_ItemDataBound的事件中,取出数值进行匹配.代码如下:

 

private void LiqDatagrid1_ItemDataBound(object sender, System.Web.UI.WebControls.DataGridItemEventArgs e)
        
...{
            
if ((e.Item.ItemType == ListItemType.Item)||(e.Item.ItemType == ListItemType.AlternatingItem))  
            
...{
                
string StrPower = e.Item.Cells[6].Text.Trim(); // 用隐藏列取出数据
                DropDownList drpcarinfo = (DropDownList)e.Item.Cells[5].FindControl("carinfolist"); 
                
for(int i=0;i<drpcarinfo.Items.Count;i++)
                
...{
                    
if(StrPower.Equals(drpcarinfo.Items[i].Value))
                    
...{
                        drpcarinfo.Items[i].Selected 
= true;
                    }

                    
else
                    
...{
                        drpcarinfo.Items[i].Selected
=false;
                    }

                }
    
            }

        }

二、触发DataGrid中DropDownList的事件

protected void carinfolist_SelectedIndexChanged(object sender, System.EventArgs e) 
        
...{
            
string droplist = ((DropDownList)sender).SelectedValue;
            DropDownList ddl 
= (DropDownList)sender; 
            TableCell cell 
= (TableCell)ddl.Parent; 
            DataGridItem item 
= (DataGridItem)cell.Parent; 
            
new components.DBCarInfo().carInfonew_Update(Convert.ToInt32(item.Cells[4].Text),droplist);
            Response.Write(
"<script>alert('!');</script>");
        }

Extjs在Asp.Net中的应用开发

本套课程讲述了Extjs在Asp.Net中的应用基础篇,内容深入浅出,适合新手学习使用,本部分内容属于extjs全新内容
  • 2015年04月24日 14:38

编辑DataGrid时动态绑定DropDownList

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

为DataGrid 写一个 DropDownListColumn

Net下有一个类DataGridColumn作为 DataGrid 控件的不同列类型的基类。有关此类型所有成员的列表,请参阅 DataGridColumn 成员。System.Object   Sys...
  • qq_net
  • qq_net
  • 2004-09-13 13:33:00
  • 767

处理在DataGrid中的DropDownList的事件

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

DataGrid中dropdownlist事件的触发/ImageButton的事件触发

aspx页面部分代码:                                 CommandName="LookDetail">        AutoPostBack="True">   ...
  • aarondai
  • aarondai
  • 2005-10-31 14:12:00
  • 953

DataGrid中DropDownList触发SelectedIndexChanged事件并修改DataGrid行值

今天遇到了问题,就是在 DataGrid中DropDownList触发SelectedIndexChanged事件 ,并通过修改DropDownList的值,把其它对应的值也读取绑定DataGrid相...
  • sendling
  • sendling
  • 2007-08-24 15:28:00
  • 3669

捕获放在datagrid的footer里面的dropdownlist的事件

using System;using System.Collections;using System.ComponentModel;using System.Data;using System.Dra...
  • Bmonkey
  • Bmonkey
  • 2004-11-01 20:08:00
  • 855

DataGrid中DropDownList的动态绑定和触发DropDownList事件

我在写DataGrid控件中子控件事件时候,DropDownList的事件相比而言麻烦一点,在此,我简单罗列如下(我在此处为了方便这里都用DataGrid中的隐藏列存储我所要的数据):一、DropDo...
  • hui_shixu
  • hui_shixu
  • 2009-12-03 00:22:00
  • 633

DataGrid模版中嵌入了dropdownlist,如何触发这个dropdownlist的事件

protected void ddlChange(object sender, System.EventArgs e){TextBox1.Text = "111";}private void Data...
  • vAction
  • vAction
  • 2006-11-19 10:25:00
  • 575

DIV DataGrid DropDownList 详细显示

本文详细介绍了如何实现在点击DropDownList的时候弹出DataGrid,然后从DataGrid里面选择相应的项。       很早就发现在网上有很酷的下拉选择框,今天我在这里也写一个,该方法旨...
  • zsulwq0915
  • zsulwq0915
  • 2007-08-01 17:17:00
  • 716
收藏助手
不良信息举报
您举报文章:处理在DataGrid中的DropDownList的事件
举报原因:
原因补充:

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