这个不显示数据咋办啊?C#中的winform应用数据库里面有数据但是dataGridView1不显示数据

using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Linq;
using System.Text;
using System.Threading.Tasks;
using System.Windows.Forms;

namespace JCGLXT
{
public partial class 数据检索 : Form
{
教材管理系统Entities myDB = new 教材管理系统Entities();
public 数据检索()
{
InitializeComponent();
}

private void 数据检索_Load(object sender, EventArgs e)
{
jckcBindingSource.DataSource = myDB.jckc;
// this.dataGridView1.DataSource = myDB.jckc;
//.datasource = table;
//dataGridView1.DataSource = myDB.jckc;
this.dataGridView1.DataSource = jckcBindingSource;
}

}
}

Form2 f2 = new Form2();
f2.dataGridView1.DataSource = bs;
上面这两句代码是有问题的,这样并不能起到将你打开的Form2窗口中的dataGridView的控件数据刷新,它其实是在新建另外一个Form2窗口,并让新建的Form2中的dataGridView控件数据刷新。所以达不到你要的效果。 要想刷新你的dataGridView控件中的数据,我有两种方法: 第一种,如果你上面的button的窗体是由From2打开的,并且是模态化的窗口,你可以使用属性来获取要更新的数据。 第二种,使用委托和事件来实现。 你的这两个窗体结构是怎样的,这两个窗体你是怎样打开的,说清楚了我帮你解决。
温馨提示:答案为网友推荐,仅供参考
第1个回答  2015-04-08
using System.Data.SqlClient;

private void 数据检索_Load(object sender, EventArgs e)
{
SqlDataAdapter sda1 = new SqlDataAdapter("select * from cy_food , Conn.conn);
DataSet ds1 = new DataSet();
sda1.Fill(ds1);
dataGridView1.DataSource = ds1.Tables[0];
}

虽然看不懂你代码表示的懂你,你可以按照这个改下,你只需把cy_food 表名改下,你用的是mysql 吗,本回答被网友采纳
第2个回答  2015-04-08
啥呀,看不懂,很乱。
第3个回答  2015-04-08
我没看到你进行数据查询了呢?
把界面帖上来干什么啊,又没的用!!追问

知识想把数据显示在dataGridView中

但是怎么搞都不显示

相似回答