在模板列中增加一个DropDownList
<asp:TemplateColumn HeaderText="学院">
<ItemTemplate>
<asp:DropDownList ID="dep2" Runat="server" AutoPostBack="True" OnSelectedIndexChanged="DropDownList2_SelectedIndexChanged"></asp:DropDownList>
</ItemTemplate>
<EditItemTemplate>
<asp:DropDownList ID="dep" Runat="server"></asp:DropDownList>
</EditItemTemplate>
</asp:TemplateColumn>
在前台直接加上事件DropDownList2_SelectedIndexChanged
然后在后台添加事件就可以了
protected void DropDownList2_SelectedIndexChanged(object sender, System.EventArgs e)
{
Response.Write(((DropDownList)sender).SelectedItem);
}
注意,事件不能是private的,这里的sender就是这个下拉框,类型转换一下就能使用了
说了怎么在触发DataGrid模板列中控件自己的事件,怎么知道点击的是哪一行?要通过这个来获取中的信息。
那一行DataGridItem是
吗?不是,因为((DataGridItem)((CheckBox)sender).Parent)是TableCell
其实应该是
接下来你想怎么就怎么了。
输出行号:
输出值: