C#winform如何解决dataGridView1不显示表里的内容?
C#winform如何解决dataGridView1不显示表里的内容?想通过在textbox1里输入数字,当输入的数字与表里条码的数值相等时,按button确定键,把条码...
C#winform如何解决dataGridView1不显示表里的内容?想通过在textbox1里输入数字,当输入 的数字与表里条码的数值相等时,按button确定键,把条码的全部信息显示在dataGridView1里,没按一下button确定键,下面自动增加一行并把相应的信息显示出来。表和winform在下面的照片里了,代码是:
private void button1_Click(object sender, EventArgs e)
{ conn = new SqlConnection("server=.;database=tiaomajieshouqi_Data;uid=sa;Password=");
conn.Open();
SqlCommand cmd=new SqlCommand ("select * from tiaomajieshouqi where 条码="+textBox1 .Text .Trim (), conn);
SqlDataAdapter sda = new SqlDataAdapter( );
sda.SelectCommand = cmd;
DataSet ds = new DataSet();
sda.Fill(ds);
this.dataGridView1.AutoGenerateColumns = false;
dataGridView1.DataSource = ds.Tables[0] ;
}
从表中读取的数据字段名要跟GridView上的字段名一致,请看以下照片和代码。 展开
private void button1_Click(object sender, EventArgs e)
{ conn = new SqlConnection("server=.;database=tiaomajieshouqi_Data;uid=sa;Password=");
conn.Open();
SqlCommand cmd=new SqlCommand ("select * from tiaomajieshouqi where 条码="+textBox1 .Text .Trim (), conn);
SqlDataAdapter sda = new SqlDataAdapter( );
sda.SelectCommand = cmd;
DataSet ds = new DataSet();
sda.Fill(ds);
this.dataGridView1.AutoGenerateColumns = false;
dataGridView1.DataSource = ds.Tables[0] ;
}
从表中读取的数据字段名要跟GridView上的字段名一致,请看以下照片和代码。 展开
展开全部
//静态变量的 dsAll 作为dataGridView1数据源
public static DataSet dsAll = new DataSet();
private void button1_Click(object sender, EventArgs e)
{
string sqlcon = "server=.;database=MyBook;uid=sa;pwd=gb123";
SqlConnection con = new SqlConnection(sqlcon);
string sql = "select name,quarter from test where name='"+this.textBox1.Text+"'";
con.Open();
SqlCommand cmd = new SqlCommand(sql,con);
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds); //获得 了 数据库的信息,装在到 ds
con.Close();
dsAll.Merge(ds); //合并数据源 dsAll合并了 ds数据源
this.dataGridView1.DataSource = dsAll.Tables[0];
}
//顺手随便写的,方法也没分类,挤在一起,应该能理解吧。只是给个思路,呵呵
public static DataSet dsAll = new DataSet();
private void button1_Click(object sender, EventArgs e)
{
string sqlcon = "server=.;database=MyBook;uid=sa;pwd=gb123";
SqlConnection con = new SqlConnection(sqlcon);
string sql = "select name,quarter from test where name='"+this.textBox1.Text+"'";
con.Open();
SqlCommand cmd = new SqlCommand(sql,con);
DataSet ds = new DataSet();
SqlDataAdapter da = new SqlDataAdapter(cmd);
da.Fill(ds); //获得 了 数据库的信息,装在到 ds
con.Close();
dsAll.Merge(ds); //合并数据源 dsAll合并了 ds数据源
this.dataGridView1.DataSource = dsAll.Tables[0];
}
//顺手随便写的,方法也没分类,挤在一起,应该能理解吧。只是给个思路,呵呵
追问
可以理解,怎么实现前面的序列号自动增加啊,就是每增加一种商品的时候,序列号自动增加。
追答
你自己插入一个列进行计算,要么就是在 dataSet里面计算
这个应该不是什么特别麻烦的事情
本回答被提问者采纳
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
this.dataGridView1.AutoGenerateColumns = false;
string sql = "select jhid,nd,bh,jhmc,bzry,jhsj,zlzg,sssj,pzry,pzsj,bz from lab_kzxffjh order by jhid,bh,jhmc";
SqlDataAdapter sda = new SqlDataAdapter(sql, "连接");
ds.Clear();
sda.Fill(ds, "lab_kzxffjh");
this.dataGridView1.DataSource = ds.Tables["lab_kzxffjh"];
对照一下吧,还有数据库中不能有null值,要不也是被过滤的。
你要么在数据库中加一行自动增加id的列,要么,在datagridview表中不要加数据源,只加表头名字,等生成后,datagridview序列号一列等于(this.datagridview1.Rows.count+1).ToString()就可以了。
string sql = "select jhid,nd,bh,jhmc,bzry,jhsj,zlzg,sssj,pzry,pzsj,bz from lab_kzxffjh order by jhid,bh,jhmc";
SqlDataAdapter sda = new SqlDataAdapter(sql, "连接");
ds.Clear();
sda.Fill(ds, "lab_kzxffjh");
this.dataGridView1.DataSource = ds.Tables["lab_kzxffjh"];
对照一下吧,还有数据库中不能有null值,要不也是被过滤的。
你要么在数据库中加一行自动增加id的列,要么,在datagridview表中不要加数据源,只加表头名字,等生成后,datagridview序列号一列等于(this.datagridview1.Rows.count+1).ToString()就可以了。
追问
不加数据源,怎么把表里的数据显示在datagridview中?你帮我看看
追答
你用datagridview表中的数据源绑定不就行了。绑定你数据库中的字段。就可以显示了。实在不行你把代码发我QQ842560352邮箱中我给你调试一下。别忘了数据库。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
"select * from tiaomajieshouqi where 条码=" 这里面的条码应该写成你数据里面存储条码用的参数名
追问
这里是从textbox输入,当输入的条码与数据库里存储条码一致时,就显示出来。
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
绑定了数据源,没看到DataBind();
更多追问追答
追问
没有这个。有空教教我吗?
追答
你只是为DataSource赋值,但还没绑定显示啊
还有你的查询语句也有问题
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
展开全部
dataGridView1.DataBind(); 加上这句
更多追问追答
追问
“System.Windows.Forms.DataGridView”并不包含“DataBind”的定义。
追答
ds中有数据吗?
已赞过
已踩过<
评论
收起
你对这个回答的评价是?
推荐律师服务:
若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询