DataGrid的模版列,用了一个DROPDOWLIST,然后想在PermissionList_SelectedIndexChanged事件中响应,要怎么做哦  立刻给分!!!我的信用,大家看着办 ------------------------------<asp:BoundColumn DataField="approved" HeaderText="新闻审批" FooterText="approved" visible="False">
<ItemStyle Width="20px"></ItemStyle>
</asp:BoundColumn>
<asp:TemplateColumn HeaderText="新闻审批">
<ItemTemplate>
<asp:dropdownlist id="ddlNewsApproved" runat="server">
<asp:ListItem Value="0">
                  待审批新闻</asp:ListItem>
<asp:ListItem Value="1">
                  已审批新闻</asp:ListItem>
<asp:ListItem Value="2">
                  拒审批新闻</asp:ListItem>
</asp:dropdownlist>
</ItemTemplate>
</asp:TemplateColumn>

解决方案 »

  1.   

    直接声明就是<asp:dropdownlist id="ddlNewsApproved" runat="server"
    onselectedindexchanged="hanlder">后台代码:protected void handler(object sender, EventArgs e) {
    }
      

  2.   


    protected void handler(object sender, EventArgs e) {
        DropDownList ddlNewsApproved = sender as DropDownList; // 获取出发事件的DropDownList对象// more your code}
      

  3.   

    上面的还缺一个AutoPostBack="True" ,这样我测试过可以响应的。
    <asp:DropDownList ID="dd1" Runat="server" AutoPostBack="True" OnSelectedIndexChanged="selechanged">
    <asp:ListItem>1</asp:ListItem>
    <asp:ListItem>2</asp:ListItem>
    <asp:ListItem>3</asp:ListItem>
    </asp:DropDownList>
      

  4.   

    可是如果要得到当前DATAGRID行的ID要怎么办哦
      

  5.   

    意思是,,,要得知道ID'取得当前行的KeyID
            Dim SelectednewsID As Integer = CType(dgNewsShow.DataKeys(e.Item.ItemIndex), Integer)这样的哈
      

  6.   

    DropDownList dd = (DropDownList)sender;
    DataGridItem dgItem =  (DataGridItem)dd.Parent.Parent;
    string ss = DataGrid1.DataKeys[dgItem.ItemIndex].ToString();
      

  7.   

    楼上正解只要搞懂 Control 的 Parent & ChildControl 属性以及 ASP.NET 的控件事件模型,
    很多事情都非常处理