我用ASP.NET做了个档案管理系统,前几天做到对已输入档案修改页面时,把档案类别设定为一个DropDownList控件,用户可以从下拉列表中选择,可是我想让数据库中原始输入档案类别在页面第一次刷新时就显示在DropDownList上,在WINDOWS应用程序中DropDownList是有Text属性的,可ASP.NET中我就是没有找到,请高手指点,谢谢!!

解决方案 »

  1.   

    ddlCategoryName.DataSource = dr;
    ddlCategoryName.DataTextField = "Category_Name";//你将显示的内容
    ddlCategoryName.DataValueField = "Category_ID"; //每个项的value
    ddlCategoryName.DataBind();
    dr.Close();是这个意思么?
      

  2.   

    可以绑定啊:
    ddl.DataTextField = "档案类别名称字段";
    ddl.DataValueField = "档案类别ID字段";
      

  3.   

    dropdownlist里面显示给人看的绑定字段时datatextfield,而进行数据库操作的是datavaluefield不过你要注意绑定咯,可以把逍遥子的方法写在pageload事件并要处于
    if (!IsPostBack)
    {
    ddlCategoryName.DataSource = dr;
    ddlCategoryName.DataTextField = "Category_Name";//你将显示的内容
    ddlCategoryName.DataValueField = "Category_ID"; //每个项的value
    ddlCategoryName.DataBind();
    }这样
      

  4.   

    private void ListNewsType()
    {
    drpNewsType.Items.Clear();
    drpNewsType.DataSource=ListNewsTypeBLL();
    drpNewsType.DataValueField="value";//数据库id
    drpNewsType.DataTextField="text";//要显示的字段名字
    drpNewsType.DataBind();
    }
    public static DataTable ListNewsTypeBLL()
    {
    DataTable dt=NewsTypeDAL().Table[0];
    return dt;
    }
    public static DataSet ListNewsTypeDAL()
    {
    string sql="SELECT CategoryValueID as value,ValueCode as text FROM dbo.tf_Fetch_category_item_value(1)";
    DataSet ds=DataHelper.ExecuteDataset(sql);
    return ds;
    }
    private void Page_Load(object sender, System.EventArgs e)
    {
    if(!Page.IsPostBack)
    {
    ListNewsType();
    }
    }
    //设置默认值
    drpNewsType.Items.FindByValue(ds.Tables[0].Rows[0]["ActivityPriorityCode"].ToString()).Selected=true;