|
如果我想让DataList控件中的DropDownList触发它的SelectedIndexChanged事件如何实现呢?在DataList中嵌套DropDownList想必大家都会了,直接在DataList1_ItemDataBound中进行绑定就行了。下面是DataList中嵌套DropDownList的代码:
if (e.Item.ItemType == ListItemType.Item) { DropDownList ddl = (DropDownList)e.Item.FindControl("ddl1"); OleDbConnection cn = new OleDbConnection(ConnectionString); cn.Open(); cn1 = new OleDbConnection(ConnectionString); cn1.Open(); OleDbCommand cmd = new OleDbCommand("select * from Detail", cn); OleDbDataReader dr = cmd.ExecuteReader(CommandBehavior.CloseConnection);
ddl.DataSource = dr; ddl.DataTextField = "DName"; ddl.DataValueField = "id"; ddl.DataBind(); } 如果我们想触发DropDownList的SelectedIndexChanged怎么办呢。其实很简单,在前台页面,把datalist进入编辑状态。也就是编辑模板。就会看见DropDownList了。这时双击它就出现SelectedIndexChanged事件,可是属性菜单中无法找到AutoPostBack,没关系,我们在前台,给它加上就行了。AutoPostBack = "true" 在SelectedIndexChanged事件中,你可以做你想做的事了。 可是有一点,如果我想查看一下,我选择是什么怎么呢,这里不是有一个sender吗,我们对它处理就行了
protected void ddl1_SelectedIndexChanged(object sender, EventArgs e) { Response.Write(((DropDownList)sender).SelectedValue.ToString()); } OK,搞定,赶快试下吧!
|