你的 dataGridView1DataSource = dsTables[0];DataSource 指向一个Table。然后直接dataGridView1["cjyf",i]Value =cjyfToString();赋值给dataGridView1,就相当于是表面赋值,dataGridView1指向的数据源并没更新。查询的时候应该是查询
dataGridView1DataSource的数据,所以你更新应该更新Table,然后dataGridView1DataSource 指向你更新的Table,查看表时应该就能看到了。一切均为我个人猜想,有待验证,不敢确定。
DataGridView中一列一列的绑定(列名存在集合arrList中 数据存在DataTable)
解释 集合(arrList)中存SQL语句SELECT中的 名字 转换成DataTable的 列名 //通过集合中的名字创建列名
protected DataTable CreateTable(ArrayList arrList DataReader reader)
// reader可以从ExecuteReader获得
{
// DataTable的名字
DataTable dt = new DataTable( table );
//给DataTable定列名
for (int i = ; i < arrList Count; i++)
{
DataColumn dtColumn = new DataColumn();
dtColumn ColumnName = (string)arrList[i];
dt Columns Add(dtColumn);
}
//往DataTable里加行
DataRow dtRow;
while (reader Read())
{
dtRow = dt NewRow();
for (int i = ; i < arrList Count; i++)
{
try
{
dtRow[(string)arrList[i]] = reader GetValue(i) ToString();
}
catch
{
dtRow[(string)arrList[i]] = System DBNull Value;
}
}
dt Rows Add(dtRow);
}
return dt;
}
DataTable m_listViewInfo = CreateTable(集合名 DataReader名)
//将DataTable绑定到DataView中
DataView dvListViewInfo = new DataView(m_listViewInfo);
dataGridView Columns Clear();
//取消dataGridView 按默认方式显示
dataGridView AutoGenerateColumns = false;
//绑定DataView到dataGridView上
dataGridView DataSource = dvListViewInfo;
DataGridViewTextBoxColumn dtcTimeStamp = new DataGridViewTextBoxColumn();
dtcTimeStamp DataPropertyName = TIMESTAMP ;//SQL语句得到的列名 可从集合中获得dtcTimeStamp HeaderText = 日期 ;//列头显示的汉字dtcTimeStamp Width = ;
lishixinzhi/Article/program/net/201311/11429
是可以的,先把datagridview清空,再把表赋给它,它会自动列改为你赋给它的表的列标题的,如果想单独改的话就用DataGridViewColumns(index)HeaderText
以上就是关于c# datagridview新增列,如何显示更新的内容全部的内容,包括:c# datagridview新增列,如何显示更新的内容、c# DataGridView数据绑定编程与显示、vb.net中datagridview怎么更改列标题等相关内容解答,如果想了解更多相关内容,可以关注我们,你们的支持是我们更新的动力!
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)