formview的数据源在Page_Load的时候指定数据源,在formview里面的dropdownlist控件已经指定好数据源和绑定字段,显示数据很正常.aspx页面代码:
 <asp:DropDownList ID="ed_DDL_director" runat="server" DataSourceID="SqlDS_member" DataTextField="cname"
                        DataValueField="id" SelectedValue='<%# Bind("iDirectorId") %>'>
aspx.cs页面代码:
DropDownList ddl_mid = (DropDownList)FormView1.FindControl("ed_DDL_director");
            Response.Write("<script language=javascript>alert('" + ((DropDownList)FormView1.FindControl("ed_DDL_director")).SelectedValue.ToString() + "--" + ((DropDownList)FormView1.FindControl("ed_DDL_director")).SelectedIndex.ToString() + "');history.back(-1);</script>");
打印出来的值永远都是第一个数据,不管绑定的是那个数据,获取到的dropdownlist显示值都是SqlDS_member数据源中的第一个默认的数据值.
请教各位大侠,如何才能获得对应绑定的数据.

解决方案 »

  1.   

    简单的说就是显示的值,和取到的值不一样.每次取到的值都是dropdownlist指定数据源的缺省的值.
      

  2.   

    应该是少了if(!ispostback){...},每次page_load的时候都重新帮定了数据源,所以每次都显示第一个
      

  3.   

    前面也加过if(!ispostback),不过位置没有放对!现在OK了!却是如你们所说.好像如果自定义数据源以后,那些UPDATE之类的命令就用不了了.