我用dategridview控件来显示查询的结果,可是不知道怎么把查询到的结果写入到行里面,代码如下:
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;namespace db
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
string key = textBox1.Text;
string username;
string sex;
string userid;
string state;
string sql = "select * from student where username=key";
try
{
DBhelper.con.Open();
SqlCommand cmd = new SqlCommand(sql, DBhelper.con);
SqlDataReader reader = cmd.ExecuteReader();
DBhelper.con.Close(); while (reader.Read())
{
username = (string)reader[0];
sex = (string)reader[1];
userid = (string)reader[2];
state = (string)reader[3];
DataGridViewRow dgv = new DataGridViewRow();
dataGridView1.Rows.Add(dgv);
dgv.Cells.AddRange(new string[] { username, sex, userid, state });
//就是这里,该怎么把查询的结果输出到没一行啊?
}
reader.Close();
} catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
DBhelper.con.Close();
}
}
}
}
using System;
using System.Collections.Generic;
using System.ComponentModel;
using System.Data;
using System.Drawing;
using System.Text;
using System.Windows.Forms;
using System.Data.SqlClient;namespace db
{
public partial class Form1 : Form
{
public Form1()
{
InitializeComponent();
} private void button1_Click(object sender, EventArgs e)
{
string key = textBox1.Text;
string username;
string sex;
string userid;
string state;
string sql = "select * from student where username=key";
try
{
DBhelper.con.Open();
SqlCommand cmd = new SqlCommand(sql, DBhelper.con);
SqlDataReader reader = cmd.ExecuteReader();
DBhelper.con.Close(); while (reader.Read())
{
username = (string)reader[0];
sex = (string)reader[1];
userid = (string)reader[2];
state = (string)reader[3];
DataGridViewRow dgv = new DataGridViewRow();
dataGridView1.Rows.Add(dgv);
dgv.Cells.AddRange(new string[] { username, sex, userid, state });
//就是这里,该怎么把查询的结果输出到没一行啊?
}
reader.Close();
} catch (Exception ex)
{
MessageBox.Show(ex.Message);
}
finally
{
DBhelper.con.Close();
}
}
}
}
解决方案 »
- CRRedist2008_x64 (win7 64bit)导出.doc报错,但是其它格式是可以的
- 关于全局委托的问题
- asp:PasswordRecovery 上一步 怎样设置?
- 从非托管 VARIANT 转换为托管对象的过程中检测到无效 VARIANT。将无效 VARIANT 传递给 CLR 会导致意外的异常、损坏或数据丢失。
- DataGridView 如何把最第一列去掉 ????
- 我想问一个协议的实现方法。(大虾们帮个忙)
- 请问如何遍历动态生成的checkboxlist啊,解决给分。。急~
- 关于C#强制转换的问题
- 为什么我的remoting进行跨网段访问失败啊?我在不同计算机,同一网段访问都可以,为什么啊,高手,快救我啊!!!
- 安装Rational XDE Professional .net 问题.
- 如何让窗体不显示Icon但在任务栏中显示Icon?
- 关于数组的输出错误
dgv.Cells.AddRange(new string[] { username, sex, userid, state }); 你这两行是不是要换一下顺序啊
错误 2 参数“1”: 无法从“string[]”转换为“System.Windows.Forms.DataGridViewCell[]” D:\c#编程\formtest\db\db\Form1.cs 42 52 db
this.dataGridView1.DataSource=“查询的Sql语句”;
手动添加是这样绑定的:
dataGridView1dr = new dataGridView1();
dr.CreateCells(dataGridView1);
int index = dataGridView1.Rows.Count;
dr.Cells[0].Value = index; //序号
dr.Cells[3].Value = comKnowledge;
dataGridView1.Rows.Add(dr);
SqlDataAdapter adapter = new SqlDataAdapter();
adapter.SelectCommand =cmd
DataTable dt=new DataTable();
adapter.Fill(dt);
dataGridView1.DataSource=dt;
为什么用 datareader 啊?
像 8 楼 部比你省心多了?
报错