gridview如何绑定对应的datatable里面的列
gridview.datasource = datatable;gridview.databind()只是说明这个gridview的数据来自哪个表,而并没具体说明哪个列需要被定制成和数据源表一列对应的关系。 接下来,这个gridview和datatable是列与列的绑定完全可以用界面情况下做到的,你什么操作到如图这一步就快了。选定的字段就是你gridview显示出来的列,点下,在右边的框里面绑定table的具体列。 好久不弄这个,忘得差不多 了
c#中窗体如何使用gridview绑定数据库
图形化界面:在工具栏里面找到GridView,双击添加,然后选中添加的gridview点右上角的小三角,会看到一个选择数据源的下拉列表,点开,选择新建数据源,然后根据提示一步步来就可以了。当然,这个的前提是建立的已经连接到数据库的基础上。
如果代码实现:
首先从数据库中取得你想要的数据,然后GridView.DataSource = 查询到的数据; Gridview1.DataBind();
在dataGridview中我用动态绑定数据的方法绑定了数据,这样我就不能在dataGridview中添加多行
是有这样的问题的。
在直接用dataGridView.DataSource 绑定数据时,是不能再调用dataGridView.Rows.Add() 添加一行的。
有两种方法:
1.绑定的方法不变,在要添加一行时,要在你绑定的数据源中添加一行数据,再用添加一行数据源绑定dataGridView。
2.要改变你的绑定方法,使用dataGridView.Rows.Add(object[] param),循环绑定数据,这种情况,在添加一行时,可以直接dataGridView.Rows.Add()一行是不报错了。
如何在已经绑定数据的dataGridView对象中动态添加记录
如果dataGridView对象dataGridView1已经绑定了数据源,则使用dataGridView1.insert()或者dataGridView1.add()函数时就会报错,那么如何解决这个问题呢?
方法总会有的,这里采用了中间量。
添加一个bindingSource的对象bindingSource1,并设置dataGridView1的DataSource属性为bindingSource1。
当点击“查询”或者进行其它操作(如直接Load界面时)(这些操作首次导致对dataGridView1的数据源进行绑定),可以按如下来做:
DataTable dt; //全局变量
DataTable dt=从数据库中查询出来的数据集合;
bindingSource1.DataSource=dt;
假如点击某个按钮,在当前已经绑定的dataGridView1中再插入一条新的记录,可这样写:
DataRow row = dt.NewRow();
row["数据库字段"] = ...;
row["数据库字段"] = ...;
...
dt.Rows.Add(row);
这样就可以了.不过这样还有一个问题,假如说当前dataGridView1没有数据,还没有进行查询,我先点击按钮添加一条记录到dataGridView1中则会出现"未将对象引用到实例"这种错误,那怎么解决这个问题呢?
下面继续:
在那个你点击的按钮事件里面写:
if (dt != null)
{
//添加到bindingSource绑定的DataTable中
DataRow row = dt.NewRow();
row["数据库字段"] = ...;
row["数据库字段"] = ...;
...
dt.Rows.Add(row); }
else
{
dataGridView1.DataSource = null;
dataGridView1.Rows.Add();
dataGridView1["dataGridView1列名", dataGridView1.Rows.Count - 1].Value = ...;
dataGridView1["dataGridView1列名", dataGridView1.Rows.Count - 1].Value = ...;
...
}
好了,OK了~@@~

