datagridview显示数据,C# dataGridView 没有查出数据怎么显示?
datagridview显示数据,C# dataGridView 没有查出数据怎么显示?详细介绍
本文目录一览: c# DataGridView数据绑定编程与显示
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
c# datagridview显示屏幕中的数据
可以使用 DataGridView 的虚拟模式,按需要加载数据,实现DataGridView 虚拟模式需要设置 VirtualMode 为 true ,然后处理 CellValueNeeded 事件。
具体代码如下:
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 DataGridViewVirtualMode{ public partial class Form1 : Form { int[] DM; public Form1() { InitializeComponent(); } private void Form1_Load(object sender, EventArgs e) { DM = new int[40000]; // 初始化 40000 个 int 数据 for (int i = 0; i < DM.Length; i++) { DM[i] = i; } // 设置虚拟模式 this.dataGridView1.VirtualMode = true; // 设置行数 this.dataGridView1.RowCount = DM.Length + 1; } private void dataGridView1_CellValueNeeded(object sender, DataGridViewCellValueEventArgs e) { if (e.RowIndex == this.dataGridView1.RowCount) { return; } e.Value = ConverToBinary(DM[e.RowIndex]); } ///
///
///
private string ConverToBinary(int value) { return Convert.ToString(value, 2).PadLeft(20, '0'); } }}运行结果:
C# dataGridView 显示特定的数据
既然最后一句提示得到了四条数据,那说明从数据库中获取数据应该没问题,是数据绑定有错误。很显然datagridview1.datasource
=
dt;这句只是为datagridview控件添加了数据源,但未进行数据绑定,只要在datagridview1.datasource
=
dt;后加上datagridview1.databind();就可以了。
C# DataGridView怎么显示数据
你选定的数据源是如何绑定sql的,绑定后有没有进行测试,问题应该是在你对绑定的数据源进行设置的地方,可以考虑手动绑定数据源,那样更灵活。希望能帮到你
感觉你可以先百度找下连接数据库语句和执行SQL语句的代码。
1、实现一个用于处理数据库数据检索的详细信息的方法。下面的代码示例实现一个 GetData 方法,该方法对一个 SqlDataAdapter 组件进行初始化,并使用该组件填充 DataTable。然后,将 DataTable 绑定到 BindingSource 组件。请确保将 connectionString 变量的值设置为与数据库相应的值。
private void GetData(string selectCommand)
{
try
{
String connectionString =
"Integrated Security=SSPI;Persist Security Info=False;" +
"Initial Catalog=Northwind;Data Source=localhost";
dataAdapter = new SqlDataAdapter(selectCommand, connectionString);
SqlCommandBuilder commandBuilder = new SqlCommandBuilder(dataAdapter);
//Oracle DataSet 操作
/*
connectionString
*/
DataTable table = new DataTable();
table.Locale = System.Globalization.CultureInfo.InvariantCulture;
dataAdapter.Fill(table);
bindingSource1.DataSource = table;
//dataGridView1.AutoResizeColumns(
// DataGridViewAutoSizeColumnsMode.AllCellsExceptHeader);
}
catch (SqlException)
{
MessageBox.Show("To run this example, replace the value of the " +
"connectionString variable with a connection string that is " +
"valid for your system.");
}
}
2、在窗体的 Load 事件处理程序中,将 DataGridView 控件绑定到 BindingSource 组件,并调用 GetData 方法从数据库中检索数据
private void Form1_Load(object sender, System.EventArgs e)
{
dataGridView1.DataSource = bindingSource1;
GetData("select * from Customers");
}
如何在datagridview中显示数据库中的部分数据
SqlConnection cnn=new SqlConnection();
cnn.ConnectionString="Server=192.168.1.2;uid=sa;pwd=123;database=数据库名";
cnn.Open();
DataSet ds=new DataSet();
String sql="Select ....";
SqlDataAdapter sda=new SqlDataAdapter(sql,cnn);
sda.Fill(ds);
dataGridView1.DataSource=ds.Tables[0];
VB2013 Datagridview数据写入及显示 数据显示不全
可以直接把Datagridview的Datasource绑定到数据表,可以直接显示整个表的内容。不需要一行一行的添加。逐行添加数据量大的时候,显示比较慢。最好还是使用sql的查询语句,将查询结果数据绑定到Datagridview即可。这样还节省了代码的。
C# dataGridView 没有查出数据怎么显示?
有个取巧的办法,是在DataGridView控件上面放一个label,在往DataGridView填充数据的时候,如果没有数据,就将label设成没有数据的提示,再设置label为可见;如果有数据,就将label隐藏起来。
System.Data.DataTable 结果空表 = new System.Data.DataTable();
09. foreach (string 数据列 in 创建1) 结果空表.Columns.Add(数据列);/*创建所需列数和名称*/
10. if (读取表格数据.Tables.Count > 0)
11. {
12. for (int 行 = 0, 数 = 读取表格数据.Tables[0].Rows.Count; 行 < 数; 行++) { 结果空表.Rows.Add(); }/*创建所需行数*/
13. 处理结果.DataSource = 结果空表;
http://blog.csdn.net/xianfajushi/article/details/8095375
dataGridView里面有一个属性,查询出来记录为空,可以显示汉字:如没有查询到记录
datagridview自动循环滚动显示数据
获得数据总条数,再定义一个变量i=0;在计时器中调用显示方法。每次计时i++;i=数据总条数时变为0;
把i传递到数据库中,用sql语句实现查询SELECT * FROM 表名 WHERE ID NOT IN (SELECT TOP(I) ID FROM 表名)
就可以控制自动滚动循环了。
加一时间计数器,在时间计数器事件中设置datagridview不同的数据源
1、定义timer控件。
2、创建获取前几条数据并绑定datagridview的A方法。
3.设定timer控件绑定A方法。
C# dataGridView 显示特定的数据
问题一:权限显示的时候 ,假如你是用lable显示的,你肯定是 lable 的text属性 绑定的权限列名,现在你可以把text属性绑定成 后台方法,方法的参数就是权限的字段,在后台做处理 如果是1返回“普通用户”。。。
具体实现:
<asp:label id="Label1" runat="server" text="
bindString()---是后台定义的方法名 quanxian---是权限的字段名
在后台再写个方法
public string bindString(string quanxian)
{
if(quanxian.Equals("1"))
return "普通用户";
else if(quanxian.Equals("1"))
return "高级用户";
else
return "管理员";
}
第二种方法 就是楼上说的 用sql语句
SELECT dbo.A.name, dbo.A.pwd, dbo.B.name AS Expr1
FROM dbo.A INNER JOIN
dbo.B ON dbo.A.roleid = dbo.B.id
WHERE (dbo.A.roleid > 0)
问题二:
执行删除时:
提取 该用户id
执行sql语句:"update A set roleid=0 where id="+id;
在重新绑定 gridview 就行了
问题一绑定时我给你个SQL语句:
select 用户名,密码,(select 权限 from B表 where ID=A.权限) from A表 A
问题二:
自定义dataGridView的删除事件为更新用户状态的操作就OK了
把你的SQL文换成这个:select A.用户名,A.密码,B.权限[文本] from A left join B on A.权限[数字]=B.权限[数字] where A.用户状态='1'
1.用第一个表的权限数和第二个权限表的主键关联,这样就能显示出b表的值
2.用sql语句控制
datagrid绑定的表可以用特定的行和列实现。
我可以提供给你两个方案:
1、是基于数据库的,你可以做一个视图,视图其实也是一个表,你可以把希望显示的字段加入到视图中,然后datagrid绑定数据源绑定视图表就可以了。
2、是基于ADO.NET的技术。因为dataset和dataadapter之间填充(fill方法)的时候是脱离数据源的。你可以把数据都取出来,然后指定你填充的table每一列是什么内容,然后再为datagrid绑定。