在ItemCommand事件中
加入
if(e.Item.ItemType==ListItemType.Item)
{
DropDownList bt=e.Item.FindControl("aaaa") as System.Web.UI.WebControls.DropDownList;
bt.SelectedIndex.value //为所求
}

解决方案 »

  1.   

    page_load里你执行了什么过程?
    DataGrid的绑定一般放在 !IsPostBack里
    不然页面再次加载的时候都绑定一次,DropDownList里的值也就变成最开始的值了最好贴一下代码
      

  2.   

    可能是Page_load里没有加!IsPostBack
      

  3.   

    我是这样!页面中有两个单独的DropDownList1,2 首先通过page_laod在数据库中绑顶DropDownList1,这里用了IsPostBack; 然后通过Drp1 的Selectedchange事件绑顶DropDownList2,这里没用IsPostBock;然后在Drp2的SelectedChange事件中绑顶DataGrid中的DropDownList3;
    最后我想通过一个button1的单击事件取得DataGrid中的DropDownList3.SeletcedItem值 就这出错了
    每次只能取到DataGrid中DropDownList3的第一个值 因为一单机button1就恢复默认值了!
    我该怎么修改才能得到我选种的DropDownList3的SeletecteItem值啊!
      

  4.   

    将dropdownlist2和3的绑定也加到if(!Page.IsPostBack){。。}中
      

  5.   

    dropdownlist在not Page.IsPostBack中綁定一次。當按下按鈕時,頁面回傳了,這時沒有not Page.IsPostBack,dropdownlist又重新綁定了,所以值為第一項了
      

  6.   

    “Drp1 的Selectedchange事件绑顶DropDownList2”
    “Drp2的SelectedChange事件中绑顶DataGrid中的DropDownList3”
    这两个应该不在Page_Load里面吧贴代码看看