0

質問:データベースからリストボックスに項目を挿入するにはどうすればよいですか?

これが私が試したものです:

    public void Fetch()
    {
        using (SqlConnection cn = new SqlConnection(UtilObj.ConnectionString()))
        {
            cn.Open();
            ExecuteFetch(cn);
            cn.Close();
        }
    }

    public void ExecuteFetch(SqlConnection cn)
    {
        using (SqlCommand cm = cn.CreateCommand())
        {
            cm.CommandType = CommandType.StoredProcedure;
            cm.CommandText = "spName";
            cm.Parameters.AddWithValue("@Param1", Param1Val);
            using (SafeDataReader dr = new SafeDataReader(cm.ExecuteReader()))
            {
                while (dr.Read())
                {
                    myListBox.Items.Add(dr["Color"].ToString());
                }
            }
        }
    }

デバッガーにデータが入力されていても、コードを実行すると空のリストが表示されます。

ASPXページ

<asp:ListBox ID="myListBox" runat="server" />
4

1 に答える 1

0

私はあなたがこのようなものを探していると思います:-

sp の実行後にリーダー オブジェクトを取得する

SqlDataReader reader = cmd.ExecuteReader(); 

myListBox.DataSource= reader; //reader object
myListBox.DataTextField = "Color"; // the field you want to show in listbox
myListBox.DataValueField = "Color"; // the value filed behind the items. 
myListBox.Databind();

必要に応じて、テキスト フィールドと値フィールドを同じにすることもできます。

それでおしまい。項目をドロップダウン リストにバインドするのと同じ方法です。最近のプロジェクトでこれを使用しました

お役に立てば幸いです

于 2013-08-13T18:29:00.953 に答える