0

次のような for ループを使用してドロップダウンを作成しようとしていました。

    private void Page_Load(object sender, System.EventArgs e)
    {
        //build placeholder
        for(int x = 0; x <= 10; x++) {

            DropDownList dp = new DropDownList();
            dp.ID = "carrirerDp " + x.ToString();
            dp.DataSource = PhoneCarrierSqlDataSource;               
            dp.DataTextField = "carrier_name";
            dp.DataValueField = "crr_id";
            DropDownPlaceHolder.Controls.Add(dp);
            DropDownPlaceHolder.Controls.Add(new LiteralControl("<br>"));
        }     
    } 

ドロップダウンは作成されますが、空です。aspマークアップで作成したものを除く

 <asp:DropDownList ID="PhoneCarrierDropDownList" runat="server" 
    DataSourceID="PhoneCarrierSqlDataSource" DataTextField="carrier_name" 
    DataValueField="crr_id">
 </asp:DropDownList>  

 <asp:SqlDataSource ID="PhoneCarrierSqlDataSource" runat="server" 
    ConnectionString="<%$ ConnectionStrings:ApplicationServices %>" 
    SelectCommand="SELECT * 
                   FROM Table">
 </asp:SqlDataSource>

そして、ここにプレースホルダーがあります:

 <asp:PlaceHolder id="Area1" runat="server"></asp:PlaceHolder>
4

1 に答える 1

4

まだデータバインドされていません:

 dp.DataBind();
于 2013-10-03T20:58:43.073 に答える