我在GridView中有DropDownList。现在我想为dropdownlist添加事件处理程序,它将对SelectedIndexChanged作出反应。 我通过使用GridView的RowDataBound事件在GridView中嵌套DropDownList。 (http://www.highoncoding.com/Articles/169_DropDownList_Inside_GridView__Method_1_.aspx) 有人可以帮助我,并告诉我如何为下拉列表添加事件处理吗?
答案 0 :(得分:1)
SelectedIndexChanged
,您必须将AutoPostback
属性设置为true
并将SelectedIndexChange事件指向某个过程。
问题的原因是我没有检查Page_Load函数(在将数据绑定到GridView期间)遵循以下规则:If Not Page.IsPostBack Then
。就这样。所以不要忘记这样做! :)
答案 1 :(得分:0)
在GridView1_RowDataBound
方法中,通过调用ddl.SelectedIndexChanged += new EventHandler(ddl_SelectedIndexChanged);
然后,声明void ddl_SelectedIndexChanged(object sender, EventArgs e)
方法来处理您的逻辑。 sender
参数将是对所选下拉列表的引用。
答案 2 :(得分:0)
两个gridview事件用于下拉列表选择的索引已更改。
RowDataBount
网格视图的事件处理程序(用于项目选择)。RowUpdating
网格视图的事件处理程序(用于使用网格视图更新所选项目)。答案 3 :(得分:0)
答案很有用。
我有类似的情况,我有一个要添加到产品库存的项目列表。 当我选择产品时,我需要在下一栏中显示其单位(kg /升)。
为此,我需要在网格视图中找到产品下拉列表中的确切行。因此,在selected_index_changed事件中,我遍历每个gridview行,并匹配下拉列表ID。
但问题是所有行中下拉列表的“id”保持不变。 所以我添加了一个条件来匹配ddl的客户端ID 发件人的客户端ID,它工作得很好。
所以,考虑分享我的经验。
谢谢!
答案 4 :(得分:-1)
在网格视图上添加onRowCommand事件,将命令名称添加到下拉列表,将其autoPostback属性设置为true,并在onRowCommand事件中检查e.CommandName(如果您有其他事件,则网格视图将像寻呼)。