这是做的一个dataGridView,数据库里有个相对应的表“wei”
怎么把表里的的数据动态显示到这个dataGridView里面来捏
下面是我的代码。。没效果 public void GetData()
{
string ConnectionString = "Data Source=.;Integrated Security=SSPI;Initial Catalog=weight";
SqlConnection con = new SqlConnection(ConnectionString);
weight weig = new weight();
try
{
string sql = "select * from wei ";
con.Open();
SqlCommand cmd = new SqlCommand(sql,con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
weig.dataGridView1.AutoGenerateColumns = true;
da.Fill(ds, "wei");
weig.dataGridView1.DataSource = ds;
weig.dataGridView1.DataMember = "wei";
weig.dataGridView1.Columns[1].DataPropertyName = ds.Tables[0].Columns[5].ToString();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
}
weig.dataGridView1.DataSource = ds;这里改一下weig.dataGridView1.DataSource=ds.tables["wei"]
或者ds.Tables[0];
你的确定你的"select * from wei "在查询分析器中执行的时候,是有结果的。
应该不是这个sql的问题,weight 是什么类型,是你自己的另一个窗体吗
{
DataSet ds = new DataSet();
string ConnectionString = "Data Source=.;Integrated Security=SSPI;Initial Catalog=weight";
using (SqlConnection con = new SqlConnection(ConnectionString))
{
con.Open();
SqlCommand cmd = new SqlCommand("select * from wei", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds, "wei");
}
dataGridView1.DataSource = ds.Tables["wei"];
}
{
class GetWeight
{
public void GetData()
{
string ConnectionString = "Data Source=.;Integrated Security=SSPI;Initial Catalog=weight";
SqlConnection con = new SqlConnection(ConnectionString);
weight weig = new weight();
try
{
string sql = "select * from wei ";
con.Open();
SqlCommand cmd = new SqlCommand(sql,con);
//cmd.CommandText = "select * from wei order by id desc";
SqlDataAdapter da = new SqlDataAdapter(cmd);
DataSet ds = new DataSet();
weig.dataGridView1.AutoGenerateColumns = true;
da.Fill(ds, "wei");
weig.dataGridView1.DataSource = ds;
weig.dataGridView1.DataMember = "wei";
weig.dataGridView1.Columns[1].DataPropertyName = ds.Tables[0].Columns[5].ToString();
}
catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
con.Close();
}
}
}
}
整个类就这一个方法啊,不是weight那个类的
别这样写,,模块职责要单一性
public DataSet GetData()
{
DataSet ds = new DataSet();
string ConnectionString = "Data Source=.;Integrated Security=SSPI;Initial Catalog=weight";
using (SqlConnection con = new SqlConnection(ConnectionString))
{
con.Open();
SqlCommand cmd = new SqlCommand("select * from wei", con);
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds, "wei");
}
return ds;
}
然后weight窗体的Page_Load方法中GetWeight context = new GetWeight();
dataGridView1.DataSource = context.GetData().Tables["wei"];