3

基本的に、私が持っているコードはここからです:http: //ranafaisal.wordpress.com/2009/02/17/dynamically-adding-removing-textboxes-in-aspnet-repeater/

ただし、テキストボックス付きのドロップダウンリストが必要になります。ドロップダウンリストを使用する目的は、ユーザーが出身国を選択できるようにすることです。以前に入力した詳細を追加または削除するオプションがあります。

これは私のエラーメッセージです:

'ddlName'にはSelectedValueがありますが、これはアイテムのリストに存在しないため無効です。パラメータ名:値

これは、Default.aspxのリピーター内のドロップダウンリストコードです。

<asp:DropDownList ID="ddlName" runat="server" SelectedValue='<%# DataBinder.Eval(Container.DataItem, "ddl") %>'></asp:DropDownList>

背後にあるコードは、私が提供したリンクとまったく同じです。

  • 注意点:関連するデータベースはありません。

私は過去数時間グーグルをしているので、グーグルか何かに私に言わないでください、無駄です。私は間違いなく十分にグーグルで検索し、ここに投稿する前に他の人から提供された解決策を試しました。私はほとんど機知に富んでいます

アドオンとして、ドロップダウンリストの問題のためにアプリケーションを起動することさえできません。

4

1 に答える 1

2

問題は、をDropDownListインラインで実行しようとしている選択した値を設定する前に、可能なオプションを入力する必要があることですEval。のを使用するように切り替えて、OnDataBindingそこでDropDownList必要なことを実行します。

例:

<asp:DropDownList ID="ddlName" runat="server" OnDataBinding="ddlName_DataBinding" />

protected void ddlName_DataBinding(object sender, System.EventArgs e)
{
    DropDownList ddl = (DropDownList)(sender);

    // Fill your ddl here (eg. ddl.Items.Add("abc", xyz");
    // Make sure the value you are going to set the selected item to has been added

    // Now set the selected value since it will now exist.
    ddl.SelectedValue = Eval("ddl").ToString(); 
}
于 2011-07-02T23:38:53.893 に答える