private void Form1_Load(object sender, EventArgs e)
{
listView1.View = View.Details;
listView1.GridLines = true;
listView1.MultiSelect = false;
listView1.Columns.Add("产品ID", 80, HorizontalAlignment.Center);
listView1.Columns.Add("产品名称", 80, HorizontalAlignment.Center);
listView1.Columns.Add("供应商ID", 80, HorizontalAlignment.Center);
string DataBaseConStr = "Data Source=(local);Initial Catalog=test;Integrated Security=SSPI;";
SqlConnection SqlConn = new SqlConnection(DataBaseConStr);
SqlCommand SqlCmd = new SqlCommand();
SqlCmd.Connection = SqlConn;
SqlCmd.CommandText = "select top 20 * from 产品";
SqlConn.Open();
SqlDataReader rder = SqlCmd.ExecuteReader();
while (rder.Read())
{
ListViewItem item = new ListViewItem();
item.SubItems[0].Text=rder["产品ID"].ToString();
item.SubItems.Add(rder["产品名称"].ToString());
item.SubItems.Add(rder["供应商ID"].ToString());
listView1.Items.Add(item); }
SqlConn.Close();
rder.Close();
}
如果换成下面的语句ListView里面第一列就是空的,读取的数据往后挪了一列,"供应商ID",没显示出来,怎么回事?
item.SubItems.Add(rder["产品ID"].ToString());
item.SubItems.Add(rder["产品名称"].ToString());
item.SubItems.Add(rder["供应商ID"].ToString());
{
listView1.View = View.Details;
listView1.GridLines = true;
listView1.MultiSelect = false;
listView1.Columns.Add("产品ID", 80, HorizontalAlignment.Center);
listView1.Columns.Add("产品名称", 80, HorizontalAlignment.Center);
listView1.Columns.Add("供应商ID", 80, HorizontalAlignment.Center);
string DataBaseConStr = "Data Source=(local);Initial Catalog=test;Integrated Security=SSPI;";
SqlConnection SqlConn = new SqlConnection(DataBaseConStr);
SqlCommand SqlCmd = new SqlCommand();
SqlCmd.Connection = SqlConn;
SqlCmd.CommandText = "select top 20 * from 产品";
SqlConn.Open();
SqlDataReader rder = SqlCmd.ExecuteReader();
while (rder.Read())
{
ListViewItem item = new ListViewItem();
item.SubItems[0].Text=rder["产品ID"].ToString();
item.SubItems.Add(rder["产品名称"].ToString());
item.SubItems.Add(rder["供应商ID"].ToString());
listView1.Items.Add(item); }
SqlConn.Close();
rder.Close();
}
如果换成下面的语句ListView里面第一列就是空的,读取的数据往后挪了一列,"供应商ID",没显示出来,怎么回事?
item.SubItems.Add(rder["产品ID"].ToString());
item.SubItems.Add(rder["产品名称"].ToString());
item.SubItems.Add(rder["供应商ID"].ToString());
item.SubItems.Add(rder["产品名称"].ToString());
item.SubItems.Add(rder["供应商ID"].ToString());你加了三次,需要四列,而你只定义了三列数据显示,因此最后一列显示不出来.