C# listview问题

来源:百度知道 编辑:UC知道 时间:2024/05/26 20:01:16
while (MyReader.Read())
{
ListViewItem MyItem = new ListViewItem();

listView1.Items.Add(MyReader.GetString(0));
for (int j = 0; j <= MyReader.FieldCount - 1; j++)
{
MyItem.SubItems.Add(MyReader.GetString(j + 1));
}
}

执行到MyItem.SubItems.Add(MyReader.GetString(j + 1)); 这句的时候就提示"无法转换类型"
我就是想知道,在取不是String的值的时候,应该怎么取?

什么类型用什么
getInt32()取int
-------------------------------------
取个东西也用DataReader?
用DataSet
这前面先把dataset得到
listView1.Columns.Add("FirstName", 80, HorizontalAlignment.Center);
listView1.Columns.Add("LastName", 80, HorizontalAlignment.Center);
listView1.Columns.Add("City", 80, HorizontalAlignment.Center);
listView1.Columns.Add("Address", 180, HorizontalAlignment.Center);
listView1.Columns.Add("BirthDate", 150, HorizontalAlignment.Center);
listView1.View = View.Details;
listView1.GridLines = true;
string[] r = new string[5];
foreach (DataRow row in ds.Tables["Employees"].Rows)
{
r[0] = row["FirstName"].ToString();
r[1] = row["LastName"].ToString();
r[2] = row["City"].ToString();
r[3] = row["Address"].ToString();
r[4] = row["BirthDate"].ToString();
ListViewItem ite