在DataGrid1.DataBind();之前要设置DataGrid1.DataSource

解决方案 »

  1.   

    直接执行DataGrid1.DataBind()的话,DataGrid1.DataSource默认为空,当然就什么也不显示了,你可以在DataGrid1.DataBind()前面再重新设置DataSource。
      

  2.   

    要重新绑定datagrid的数据源,微软有很好的例子,在msdn
      

  3.   

    建议把
    string StrConn = "data source=SKYWIND;initial catalog=MWPS;persist security info=False;user id=sa;workstation id=SKYWIND;packet size=4096";
     
    string StrSqlComm = "select * from News where siteID=2 AND newsContent like '%"+searcher.Text+"%'";

    //连接数据库
     SqlConnection MyConn = new SqlConnection(StrConn);
     SqlCommand MyComm = new SqlCommand();
     MyComm.Connection = MyConn;
     MyComm.CommandType = CommandType.Text;
     MyComm.CommandText = StrSqlComm;//建立SqlDataAdapter
     SqlDataAdapter objDataAdapter = new SqlDataAdapter();
     objDataAdapter.SelectCommand = MyComm;
     DataSet objDataSet = new DataSet();
     objDataAdapter.Fill(objDataSet, "News");//将数据填入DataSet
     DataGrid1.DataSource=objDataSet.Tables["News"].DefaultView;
    //关联DataSet和DataGrid
      DataGrid1.DataBind(); 包含在一个方法中在需要重新bind的使用调用该方法ms就是这样作的
    绝对不会出现问题