注册 登录
编程论坛 ASP技术论坛

【求助】绑定DataTable到CheckBoxList

天堂落日 发布于 2007-12-12 18:24, 3379 次点击
CheckBoxList的数据源可以用DataTable进行绑定吗?
我写了测试用的绑定,但是绑定之后却没反应,好怪啊
是在找不到原因,大伙帮我看看
程序代码:
using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using System.Data.SqlClient;

public partial class Default3 : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        InitData();
    }
    private void InitData()
    {
        //链接数据库
        SqlConnection myCon = new SqlConnection();
        myCon.ConnectionString = "Persist Security Info=false; User id=sa;pwd=TianTang;database=northwind;server=(local)";
        myCon.Open();

        //使用sqlCommand提交查询命令
        SqlCommand selectCMD = new SqlCommand("select * from Categories", myCon);

        //获取数据适配器
        SqlDataAdapter da = new SqlDataAdapter();
        da.SelectCommand = selectCMD;

        //填充DataSet,得到DataTable
        DataSet ds = new DataSet();
        da.Fill(ds);
        DataTable dt = ds.Tables["Categories"];
        

        //将DataTable中的数据绑定到CheckBoxList
        CheckBoxList1.DataSource = dt;
        CheckBoxList1.DataTextField = "CategoryName";
        CheckBoxList1.DataValueField = "CategoryID";
        CheckBoxList1.DataBind();

        //断开连接
        myCon.Close();
    }
}


[[italic] 本帖最后由 天堂落日 于 2007-12-12 18:26 编辑 [/italic]]
7 回复
#2
天堂落日2007-12-12 18:27
使用Sql数据库中自带的NorthWind数据库,但是好像一直没绑定上去
#3
天堂落日2007-12-12 18:29
管理员帮忙给转移下,本来想发版的,不小心发错地方了
谢啦
#4
yms1232007-12-12 19:03
也没有出现错误?
#5
天堂落日2007-12-12 19:57
没任何错误提示,也没报出异常~~
而且我看了,数据库里的数据一切正常啊
#6
yms1232007-12-12 20:48
CheckBoxList1.DataTextField = "CategoryName";
        CheckBoxList1.DataValueField = "CategoryID";
        CheckBoxList1.DataSource = dt;
        CheckBoxList1.DataBind();
这样写试试?
#7
天堂落日2007-12-12 21:11
试了,还是不行~~
真晕,莫非今天人品不行?
#8
yms1232007-12-12 21:14
Global.DBAccess.SqlString="select * from ArticleLog";
            Global.DBAccess.TableName="ArticleLog";
            this.CheckBoxList1.DataTextField="ClassName";
            this.CheckBoxList1.DataValueField="ClassName";
            this.CheckBoxList1.DataSource=Global.DBAccess.getDataTable();
            this.CheckBoxList1.DataBind();
我在自己的机器上就可以绑定的
另外Global.DBAccess是我自写的数据库访问组件,数据库也是SQL Server 2000的。
1