我不想用自定义的数据源来绑定,想自己写代码?但是不太会,是不是先把数据放到DataTable里面?谢谢大家指教下.

解决方案 »

  1.   

    前台绑定 protected void Page_Load(object sender, EventArgs e)
        {
                if (!IsPostBack)
                {
                    GridViewBind();
                }
            
        }    protected void GridViewBind()
        { 
            int flag=1;
            if ((string)Session["teachersid"] == "admin")
            {
                GridView1.DataSource = UsersManager.BllGetAllUsersInfo(flag);
            }
            else
            {
                flag = 0;
                GridView1.DataSource = UsersManager.BllGetAllUsersInfo(flag);
            }
            GridView1.DataBind();
        }
    后台查询 /// <summary>
           /// 获取所有用户的信息
           /// </summary>
           /// <returns></returns>
            public static List<UsersModel> GetAllUsersInfo()
            {
                string sqlstr = "select * from users order by [identity]";
                SqlConnection conn = new SqlConnection(connstr);
                List<UsersModel> list = new List<UsersModel>();
                try
                {
                    using (conn)
                    {
                        conn.Open();
                        SqlCommand cmd = new SqlCommand(sqlstr, conn);
                        SqlDataReader reader = cmd.ExecuteReader();
                        while (reader.Read())
                        {
                            UsersModel newUser = new UsersModel();
                            newUser.Id = Convert.ToInt32(reader["id"]);
                            newUser.UserId = Convert.ToString(reader["user_id"]);
                            newUser.Name = Convert.ToString(reader["name"]);
                            newUser.Pwd = Convert.ToString(reader["pwd"]);
                            newUser.Identity = Convert.ToString(reader["identity"]);
                            list.Add(newUser);
                        }
                    }
                }
                catch (Exception)
                {
                    conn.Close();
                    conn.Dispose();   
                }
                return list;
            }
      

  2.   

    可以放datetable、dateset或者SqlDataReader reader = cmd.ExecuteReader(); 来读取
      

  3.   

    可以用DataTable,dataset
    还可以是从IList继承的类
      

  4.   


    您好,我是初学者,请您帮帮忙!
    问题是这样的,我成功绑定了。
    SqlDataAdapter da = new SqlDataAdapter("select * from dianying", con);
    DataSet ds = new DataSet();
    da.Fill(ds)
    this.dataGridView1.DataSource =ds.Tables[0];
    也成功运行显示数据库的内容了,我现在遇到的问题是我数据库里面的字段都是英文字段,我想自己把字段修改成中文然后显示出来,我自己弄一个dataTable,添加了列,但是就是不知道怎么放到dataset里面让它当字段。PS:显示出来的数据光标放上去怎么可以修改的呢?谢谢了!!!
      

  5.   

    gridview中设置field为数据库中的字段 然后指定该gridview的列名
      

  6.   

    我也想问一下dataGridview显示数据的话,怎么才能使数据库里面的内容显示出来成中文的呢。
    我现在数据库是英文的。
      

  7.   

    在界面设计窗口中,找到datagridview 控件,然后点击“编辑列”
    DataPropertyName 设置成数据库的字段名称,HeaderText就是要显示的名称,可以设置成你想显示的中文文字。
      

  8.   


    您好,我是初学者,请您帮帮忙!
    问题是这样的,我成功绑定了。
    SqlDataAdapter da = new SqlDataAdapter("select * from dianying", con);
    DataSet ds = new DataSet();
    da.Fill(ds)
    this.dataGridView1.DataSource =ds.Tables[0];
    也成功运行显示数据库的内容了,我现在遇到的问题是我数据库里面的字段都是英文字段,我想自己把字段修改成中文然后显示出来,我自己弄一个dataTable,添加了列,但是就是不知道怎么放到dataset里面让它当字段。
    PS:显示出来的数据光标放上去怎么可以修改的呢?谢谢了!!!主要修改sql语句就行了;例如你数据库表的字段有a、b、c;
    那你就将这一句SqlDataAdapter da = new SqlDataAdapter("select * from dianying", con);
    改为:SqlDataAdapter da = new SqlDataAdapter("select a as [中国],b as [美国],c as [英国] from dianying", con);
    这样做的原理是因为datagridview显示的是sql语句执行后的结果,记住这一点,不要忽视sql。