我想在一个页面中方2个gridview的控件,其中上面一个是显示用户的大致信息,如用户名,用户ID等,还有一个列“详细信息”,也就是说点击这个键,下面一个gridview就显示这个用户的详细信息。我是想用用户的userid来传值,这个变量应该放在gridview1的选择事件中吧。还有我下面的gridview是自定义的模板,是否也可以进行数据的绑定,我在自定义的模板里面加了如:用户名:后面是一个textbox的控件,其他的字段也想这样,那么应该怎么样进行绑定呢?
谢谢啦,大家一定要帮忙啊!

解决方案 »

  1.   

    先在你的窗体里拉一个dataGridView1 直接复制一下我的代码就行了 
    string connecttionString="Data Source=.;Initial Catalog=abc;Persist Security Info=True;User ID=sa;Password=123456"; 
    SqlCommand cmd = new SqlCommand(); 
                  cmd.CommandText = "select * from  abc “;             DataSet ds = new DataSet(); 
                using (SqlConnection conn = new SqlConnection(connecttionString)) 
                { 
                  cmd.Connection = conn;                 SqlDataAdapter adapter = new SqlDataAdapter(); 
                    adapter.SelectCommand = cmd;                 adapter.Fill(ds); 
                } 
                DataTable table = ds.Tables; 
      dataGridView1.DataSource=table ; 如果是Bs就是Web里加上这个dataGridView1.DataBind(); 
    否则不用的
    在单击事件下再写一段这样的代码,
    先在你的窗体里拉一个dataGridView1 直接复制一下我的代码就行了 
    string connecttionString="Data Source=.;Initial Catalog=abc;Persist Security Info=True;User ID=sa;Password=123456"; 
    SqlCommand cmd = new SqlCommand(); 
                  cmd.CommandText = "select * from  abc  where ID="+在这里写要查询的ID;             DataSet ds = new DataSet(); 
                using (SqlConnection conn = new SqlConnection(connecttionString)) 
                { 
                  cmd.Connection = conn;                 SqlDataAdapter adapter = new SqlDataAdapter(); 
                    adapter.SelectCommand = cmd;                 adapter.Fill(ds); 
                } 
                DataTable table = ds.Tables; 
      dataGridView1.DataSource=table ; 如果是Bs就是Web里加上这个dataGridView1.DataBind(); 
    否则不用的
      

  2.   

    protected void  GridView1_SelectedIndexChanged1(object sender, GridViewSelectEventArgs e)
    {
          String userid= GridView1.DataKeys[e.RowIndex].Values[0].ToString();
       
    }
    为什么我这样写错了呢?
      

  3.   

     String userid= GridView1.DataKeys[e.RowIndex].ToString(); 
      

  4.   

    String userid= GridView1.DataKeys[e.RowIndex].Values[0].ToString(); 这个要先在GridView的DataNameKeys属性里面填写 ID 才能在后台获取DataKeys集合
      

  5.   

    在GridView1的SelectedIndexChanged的事件中根本取不到e.RowIndex!!
    应该是:
    String userid = GridView1.SelectedDataKey.Values[0].ToString(); 或者DataKey只有一个的话,也可以:
    String userid = GridView1.SelectedDataKey.Value.ToString(); 
      

  6.   

    String userid = GridView1.SelectedDataKey.Value.ToString(); 
      

  7.   

    我的gridView2想事编辑模板,然后我在,里面加了label 和textbox

    userid  textbox1
    uername textbox2
    ...
    请问这样怎么用进行代码绑定啊
    我选择textbox1的text 是自定义绑定这一块
    要填什么表达式再次谢谢各位了!
      

  8.   

    string connectionstring = ConfigurationManager.ConnectionStrings["BBS_DATA.MDFConnectionString"].ToString(); ;
                SqlConnection conn = new SqlConnection(connectionstring);
                conn.Open();
    string selectCmd = "SELECT Subject,UserName,PostID,Content,PostTime,Photo FROM WenZhang  WHERE PostParentID='"+PostID+"'OR PostID='"+PostID+"' order by PostTime ASC";
                SqlDataAdapter da = new SqlDataAdapter(selectCmd, conn);
                DataSet ds = new DataSet();
                da.Fill(ds, "WenZhang");
                DataRow dr = ds.Tables[0].Rows[0];
                Label2.Text = dr["Subject"].ToString();
                GridView1.DataSource = ds.Tables["WenZhang"].DefaultView;
                GridView1.DataBind();
    conn.Close();
    这里的tables 是建的表吗?