【发布时间】:2020-03-02 23:01:21
【问题描述】:
我有这门课。我想从数据库中获取数据(它正在工作)。使用数据库中的数据从类 person 中创建一个变量 p 并将其显示在 dataGridView 中(这不起作用)。
public class person {
public int id { get; set; }
public string fname { get; set; }
public string sname { get; set; }
public string lname { get; set; }
public string address { get; set; }
public string username { get; set; }
public string pass1 { get; set; }
public string pass2 { get; set; }
public string email { get; set; }
public person(int id, string fname, string sname, string lname, string address, string username, string pass1, string pass2, string email)
{
this.id = id;
this.fname = fname;
this.sname = sname;
this.lname = lname;
this.address = address;
this.username = username;
this.pass1 = pass1;
this.pass2 = pass2;
this.email = email;
}
}
我从数据库中读取数据并将其设置在变量 p 中;
if (reader.HasRows)
{
reader.Read();
id = reader.GetInt32(0);
fname = reader.GetString(1);
sname = reader.GetString(2);
lname = reader.GetString(3);
address = reader.GetString(4);
username = reader.GetString(5);
pass1 = reader.GetString(6);
pass2 = reader.GetString(7);
email = reader.GetString(8);
MessageBox.Show("Username found!");
// Call Close when done reading.
reader.Close();
person p = new person(id, fname, sname, lname, address, username, pass1, pass2, email);
dataGridView1.DataSource = p;
}
但数据未显示在 dataGridView 中。
【问题讨论】:
-
而不是 DataReader,填充 DataTable 并使用 that 作为 DataSource。发布的方式只会显示一行。
-
是的,我只想显示一行
-
我搜索一个用户名,当找到时我想在 dataGridView 中显示这个用户名的数据
-
关键信息应该在您的帖子中;也不清楚问题是什么。作为惯例,我仍然会用所有人员/学生/项目填充 DataTable,然后使用
RowFilter来显示正在搜索的人
标签: c# database datagridview