DataTable操作问题(.net)
来源:百度知道 编辑:UC知道 时间:2024/05/09 17:48:11
从DataTable 读取数据然后把值给ListView
private void Sample(DataTable dt)
{
List<ListViewItem> items = new List<ListViewItem>();
foreach (DataRow dr in dt.Rows)
{
object o=dr[1];
ListViewItem newItem = new ListViewItem();
#00 newItem.Text = dr[1];
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
items.Add(newItem);
上面#00 那块总会出现错误,"无法将类型object转换成隐式string"这是怎么回事?请大家帮帮忙!谢谢
private void Sample(DataTable dt)
{
List<ListViewItem> items = new List<ListViewItem>();
foreach (DataRow dr in dt.Rows)
{
object o=dr[1];
ListViewItem newItem = new ListViewItem();
#00 newItem.Text = dr[1];
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
newItem.SubItems.Add("");
items.Add(newItem);
上面#00 那块总会出现错误,"无法将类型object转换成隐式string"这是怎么回事?请大家帮帮忙!谢谢
newItem.Text = dr[1];
改成:
newItem.Text = Convert.ToString(dr[1]);
因为DataRow[]返回的数据类型是Object,必须显式转换成String才行.
newItem.Text = dr[1].ToString()
试试
以为dr[1]不是字符串类型的,而你的newItem.Text要求一个字符串对象,你不能隐式的将dr[1]对象转换成字符串.
还有object o=dr[1]; 这步有什么意义吗,后面没有用到啊.
newItem.Text = dr[1];
----->
newItem.Text = o is DbNull ? "":(string)o;