0

に と がDataValueFieldありDataTextFieldますDropDownList。データは a からのもので、事前に選択されたテキストとして自分のテキスト フィールドを表示するDataSet必要があります。には、" " と " "を含むからのデータが入力されます。コードは次のとおりです。dropdownlistDatasetDatasetmysql tableidtextDropDownList

<asp:DropDownList runat="server" DataValueField="id" 
DataTextField="text" ID="statusList" CssClass="viewItemRight" 
AutoPostBack="true"></asp:DropDownList>

DataValueField-Tagがない場合DropDownList、 my のテキスト値が myDataSetの事前選択されたテキストとして正しく表示されますDropDownList。しかし、を追加するとDataValueFieldDataTextField事前に選択されたテキストが表示されませんDropDownList

データのコードは次のとおりです。

//load statusList
            cmd = new MySqlCommand();
            cmd.CommandText = "SELECT * FROM statuslist WHERE active = '1' ORDER BY sorting ASC";
            cmd.Connection = con;
            sda = new MySqlDataAdapter(cmd);
            ds = new DataSet();
            sda.Fill(ds);
            statusList.DataSource = ds;
            statusList.DataBind();
            statusList.Items.Insert(0, " ");

DataValueFieldと の両方を使用するにはどうすればよいDataTextFieldですか?

4

1 に答える 1

0

このようなことを試してください

コード:

DataTable dt = populatedd();
   statusList.DataSource = dt;
   statusList.DataTextField = "name";
   statusList.DataValueField = "id";
   statusList.DataBind();

    public DataTable populatedd()
    {
        string myQuery = "select id,name from yourtable order by name";
        SqlDataAdapter dap = new SqlDataAdapter(myQuery, con);
        DataSet ds = new DataSet();
        dap.Fill(ds);
        return ds.Tables[0];
    }

マークアップ

<asp:DropDownList runat="server" ID="statusList" CssClass="viewItemRight" 
AutoPostBack="true"></asp:DropDownList>
于 2013-04-12T12:03:50.333 に答える