private void button1_Click(object sender, EventArgs e)//将数据库中读出来的信息直接显示在listview里
{ //连接数据库
SqlConnection conn = new SqlConnection("server=.;database=Cml;user=sa;pwd=123");
SqlCommand cmd = conn.CreateCommand();
cmd.CommandText = "select * from "+textBox1.Text;
conn.Open();
SqlDataReader dr= cmd.ExecuteReader();
if (dr.HasRows)
{ //添列
listView1.Columns.Clear();
for (int i = 0; i < dr.FieldCount; i++)
{
listView1.Columns.Add(dr.GetName(i)); //给listview1里添列, dr.GetName(i)是获取每一列的名字
}
//添行
while (dr.Read()) //数据是一条一条的渎 ,只要里面有数据就会一直while循环 while循环循环的是为了增加一行一行的数据
{
ListViewItem lt = new ListViewItem(); //listView1.Items.Add(); 括号里面需要的是一个ListViewItem的类
for (int i = 0; i < dr.FieldCount; i++) //for循环 循环的是确定的某一行上每一列的数据
{
if(i==0) //如果i=0,代表着确定某一行的第一列的数据
{
lt.Text=dr[i].ToString();
}
else
{
lt.SubItems.Add(dr[i].ToString()); //其他的代表着 确定某一些的剩下的列数的数据
}
}
listView1.Items.Add(lt); //lt赋值以后 然后给listview1添加上
}
}
cmd.Dispose();
conn.Close();
}