select a,b,c,d,e from authors//显示a,b,c,d,e这几个字段

解决方案 »

  1.   

    你可以看看这个文章啊!
    http://www.csdn.net/develop/read_article.asp?id=17599
      

  2.   

    1:在属性生成器里面,加入绑定列,把绑定列的数据字段设为你数据库中的字段名,每个都设上,对于不像显示的把他的可见勾去掉
    2:对于DataGrid绑定列的字段你可以用DataGrid1.SelectedItem.Cells[i]来访问,i是你这个字段在DataGrid绑定列的序号第一个从0开始
    比如:Label2.Text=DataGrid1.SelectItem.Cells[3].Text;
      

  3.   

    1:在属性生成器里面,加入绑定列,把绑定列的数据字段设为你数据库中的字段名,每个都设上,对于不像显示的把他的可见勾去掉
    2:对于DataGrid绑定列的字段你可以用DataGrid1.SelectedItem.Cells[i]来访问,i是你这个字段在DataGrid绑定列的序号第一个从0开始
    比如:Label2.Text=DataGrid1.SelectItem.Cells[3].Text;
      

  4.   

    对于Label控件上的数据显示可以采取绑定的方式,代码如下:label2.DataBindings.Add("Text",DataSet1.Tables["authors"],"第二个字段名") ;
    label3.DataBindings.Add("Text",DataSet1.Tables["authors"],"第三个字段名") ;如此,在DataGrid1_SelectedIndexChanged的时候,就可以自动显示该记录的值了。
      

  5.   

    >>>>不想在DataGrid1中把所有的字段都显示出来方法1.修改你的SQL 语句,不要使用select * from ....,而是使用select mydata1,mydata2 from ....方法2.在VS.NET中,在DataGrid上右键->“属性生成器”->选择“列”->去掉“在运行时自动创建列”的勾->然后手动添加列,设置数据字段。
      

  6.   

    >>>>不想在DataGrid1中把所有的字段都显示出来方法1.修改你的SQL 语句,不要使用select * from ....,而是使用select mydata1,mydata2 from ....方法2.VS.NET中,在DataGrid上右键->“属性生成器”->选择“列”->去掉“在运行时自动创建列”的勾->然后手动添加列,设置数据字段。
      

  7.   

    楼上songtaotxl() 的方法不行啊,因为Label2里没有DataBindings的定义.
    怎么才能在输入Label2.时出现DataBindings方法
      

  8.   

    那时winform,
    不要自动生成!添加你需要的列就行了
      

  9.   

    Question1:select * 语句改变成“select column1,column2 from authors”就可以了。column1、column2就是你想显现的两个列。
      

  10.   

    你用select * from authors当然是将所有的显示出来哦!
    你想显示哪段你就select column1,column2...   from authors
      

  11.   

    //点击查看
    private void DataG1_SelectedIndexChanged(object sender, System.EventArgs e)
    {
    Session["id"]=(int)this.DataG1.DataKeys[this.DataG1.SelectedIndex];
    StrSql="select id,deu_name,re from hr_deu where id='" + Session["id"] + "';";
    //显示所要查看的数据
    Connection.method_Reader(StrSql,Connection.SqlConn,out Reader);
    if(Reader.Read())
    {
    this.txt_name.Text=Reader["deu_name"].ToString();
    this.txt_re.Text=Reader["re"].ToString();
    //显示修改按钮
    this.Image_update.Visible=true;
    }
    //关闭对象
    Reader.Close();
    }
      

  12.   

    问一个问题,你既然只要几个数据列,为什么要全部读出来啊?
    你完全可以只读你要的那几个,可一只用一个SqlConnection,只是把连接字符串自己随机改就是了
    还有你确定private void DataGrid1_SelectedIndexChanged(object sender, System.EventArgs e)这样的写法是对的吗?我这里没有VSNET,不能验证,不过,对于DataGrid1_SelectedIndexChanged这样的事件来说,是不是应该象别的空间那样,用System.Windows.Forms.xxxxxEventArgs 啊?
    说得可能不对,我也是才接触这样的问题
      

  13.   

    对于第一个问题,既是不要显示的字段,最好压根就不要从数库中取出来,浪费资源。也就是说不要用select * from ....,改用select column1,column2...   from ....。如果真是别明用途,但又不想在datagrid中列出,那么就不要选用“运行时自动添加”选项,手工加入想要的字段。
        第二个问题你找有事件不对,不是DataGrid1_SelectedIndexChanged事件,而是DataGrid1_ItemCommand事件。放在以下方法下:
        Private void DataGrid1_ItemCommand(ByVal source As Object, ByVal e As System.Web.UI.WebControls.DataGridCommandEventArgs) {
         }
      

  14.   

    哎,真是可怜啊,弄不懂还要别人嘲笑.
    楼上,你说的用Private void DataGrid1_ItemCommand,这个方法我也试过,但有没有想过,当我触发分页事件的时候不也同样触发了这个事件吗?所以不行啊,老兄.
      

  15.   

    另外我也不想把数据所有的行都读出来,关键是我想在点击"查看"的时候让下面那些Label控件显示所有的行啊.各个大哥,是我说的不明白还是你们搞不出来啊.
      

  16.   

    动态隐藏某列:
    int col;
    col=0;//设置列数
    DataGrid1.Columns[col].Visible=false;